第十九章BDE专题制作课件_第1页
第十九章BDE专题制作课件_第2页
第十九章BDE专题制作课件_第3页
第十九章BDE专题制作课件_第4页
第十九章BDE专题制作课件_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十九章BDE專題製作19-1 資料庫規畫與管理19-2 進貨19-3 銷貨19-4 查詢第十九章BDE專題製作19-1 資料庫規畫與管理1第十九章BDE專題製作假設您要開一家出版社,您的產品如下:您的經銷商如下:書籍編號書名作者售價庫存量a0001大學普物導讀與範例詳解洪國勝420140b0001VisualBasic程式設計洪國勝390980b0002VisualBasic資料庫程式設計洪國勝48080c0001Office2000實務與應用洪國勝440580c0002最新視窗軟體總動員陳惠敏400240經銷商編號經銷商名稱負責人姓名地址電話t001中山大學張山豐高雄市蓮潭路1號07-7777777t002成功大學李明豐台南市大學路1號06-6666666t003中興大學王明德台中市工學路1號04-2345168t004清華大學陳田海新竹市上學路1號03-3333333第十九章BDE專題製作假設您要開一家出版社,您的產品如下2請您寫一程式處理進貨、銷貨、存貨及帳款的處理程式,程式要求如下:1.資料庫管理 產品基本資料編輯。 客戶基本資料編輯。2.進貨 依進貨單修改產品庫存。3.銷貨 依序輸入客戶編號、產品編號與產品數量,並修改庫存量。 列印銷貨單。4.查詢 產品查詢。 經銷商查詢。 經銷商訂貨明細表查詢。 訂單明細表查詢。5.報表製作 列印印書通知單(當庫存低於100本時)。 列印每日庫存報表。 列印每月庫存報表。 列印每月客戶結算清單(來往方式為月結)。 列印客戶基本資料。請您寫一程式處理進貨、銷貨、存貨及帳款的處理程式,程式要求如3補充說明:什麼是月結? 商品的販賣方式通常有三種,一種是寄賣,另一種是月結,第三種為買斷的現金交易。寄賣是東西有賣出去才能收款,月結是本月訂購的商品,上游廠商會於下月初寄帳單來請款,當零售商收到帳單時,可開一至三個月期限的支票給供應商。比較弱勢的產品或新成立的公司只能先從寄賣開始,一般大部分的商品都採用月結,現金交易則適用於一般消費者、強勢產品、或次級品低價傾銷給攤販。補充說明:什麼是月結?419-1 資料庫規畫與管理首先您必須使用BDEAdministrtor決定資料庫的路徑及別名,本書延用路徑C:\DelBook及別名horng。其次規劃資料表的欄位結構及輸入基本資料,本例只需使用四個資料表,分別是產品資料表(product.db)、客戶基本資料表(customer.db)、訂單資料表(orde.db)及訂單產品資料19-1 資料庫規畫與管理首先您必須使用BDEAdmin51. 產品基本資料表(product.db)欄位名稱型態大小是否索引說明IdAlpha5是產品編號NameAlpha30產品名稱AuthorAlpha8作者PriceMoney定價NumNumber庫存量1. 產品基本資料表(product.db)欄位名稱型態大小62. 客戶基本資料表(customer.db)欄位名稱型態大小是否索引說明IdAlpha4是客戶編號NameAlpha20客戶名稱NameidAlpha8統一編號BossAlpha8負責人姓名AddrAlpha30地址TelAlpha10電話2. 客戶基本資料表(customer.db)欄位名稱型態大73.訂單資料表(orde.db;資料表名稱請勿使用order或number,因為那是SQL的保留字,誤用保留字的後果就是無法執行SQL敘述)。於Paradox中一個資料表若要同時定義兩個以上的索引,應於Tableproperties中點選SecondaryIndexes。欄位名稱型態大小是否索引說明OridLongInteger是訂單序號CuidAlpha4是客戶編號OrmoMoney訂單金額OrdateDate訂單日期3.訂單資料表(orde.db;資料表名稱請勿使用orde84.訂單產品資料表(orpr.db)欄位名稱型態大小是否索引說明OridLongInteger是訂單序號PridAlpha5是產品編號NumShort訂購數量DiscountShort折扣4.訂單產品資料表(orpr.db)欄位名稱型態大小是否索9補充說明:任一客戶的任一訂單有可能包含許多產品,所以訂單資料表依據資料庫正規化的原則,必須拆成以上orde及orpr兩個資料表。若將以上兩個資料表合而為一如下,則會有客戶編號、訂購日期重複出現的情況,此即破壞資料正規化中的資料不可重複的規定。訂單序號客戶編號產品編號訂購數量折扣訂購日期1t001a000120752000/11/121t001b00130702000/11/122t002a00110752000/11/132t002c00110702000/11/132t002c00250702000/11/13補充說明:任一客戶的任一訂單有可能包含許多產品,所以訂單資料10依照資料庫正規化的原則,

以上資料應拆成兩個資料表如下:訂單序號客戶編號訂單金額訂購日期1t001145112000/11/122t002204852000/11/13訂單序號產品編號訂購數量折扣1a000120751b000130702a000110752c000110752c00025070範例19-1a及19-1b分別可輸入產品及客戶基本資料表,其作法同範例16-2a輸入結束之後,請務必按一下“結束”(Tablel.Close();),才能將資料緩衝區的資料回存硬碟。依照資料庫正規化的原則,

以上資料應拆成兩個資料表如下:訂單1119-2進貨進貨的操作步驟是看到進貨單,庫管人員輸入產品編號與數量,而完成進貨,以下範例說明進貨的處理方式。19-2進貨進貨的操作步驟是看到進貨單,庫管人員輸入產12範例 19-2a進貨作業處理。範例 19-2a進貨作業處理。1319-3 銷貨當客戶上門、打電話或傳真訂購產品時,電腦記錄訂單編號、客戶編號及每樣產品的編號、數量及折扣、庫存減至訂購量、列印送貨單,而完成一筆交易,我們稱此作業為銷貨,請看以下範例說明。19-3 銷貨當客戶上門、打電話或傳真訂購產品時,電腦記錄14範例 19-3a試寫程式完成銷貨處理作業。範例 19-3a試寫程式完成銷貨處理作業。1519-4 查詢常用的查詢有產品資料表(product.db)及客戶資料表(customer.db)查詢,請參考範例16-4g自行完成。以下範例將介紹訂單的產品明細查詢,此為套用Master/Detail的典型範例19-4 查詢常用的查詢有產品資料表(product.db16範例 16-4g同上範例,但設計一個更具親和性的搜尋資料介面。範例 16-4g同上範例,但設計一個更具親和性的搜尋資料介面17範例 19-4a如何製作訂單產品明細表。 補充說明:本例共使用三個Table物件,Table1是Master,Table2是Detail,但Table1的orde.db僅有客戶編號並沒有客戶名稱,不易瀏覽,所以使用Table3將訂單資料表(orde.db)中的客戶編號(cuid)至customer.db中查閱客戶名稱,查閱的方式請看範例16-2e。範例 19-4a如何製作訂單產品明細表。18範例 16-2e同上範例,但增加查閱欄位,印出學生姓名 補充說明:欲關聯的欄位均需事先索引才能順利取得關聯,如本例stugrd.db的id欄及stuname的id欄均須事先製作索引。範例 16-2e同上範例,但增加查閱欄位,印出學生姓名19範例 19-4b同上範例,但Master使用Query。 補充說明:1. Master/Detail的應用中,Master可為Query或Table,但Detail僅能使用Table。2. 本例的Master採用Query,其SQL屬性設定如下:

selectorde.orid,,orde.ormo,

orde.ordate fromcustomer,orde wherecustomer.id=orde.orid3. 適當的使用SQL敘述可簡化使用者的工作負荷,本例的Master採用SQL敘述,只需一個Query物件即可,但上例因需查閱,故需另外安排一個Table當查閱欄位。範例 19-4b同上範例,但Master使用Query。20範例 19-4c如何查詢每一客戶的每一訂單產品明細表 補充說明:本例共使用三個Table,第一個Table指向customer.db,第二個Table指向orde.db,第三個Table指向orpr.db,然後分別設定Table1與Table2的Master/Detail及Table2與Table3的Master/Detail關係即可。範例 19-4c如何查詢每一客戶的每一訂單產品明細表21習題1. 請將本章所有表單,融合在同一個專案。(未完成的表單則請自行創作)2. 請於本章的訂單資料表orde.db增加一個業務員欄位,且可統計及列印每位業務員每日的業績及每月應收帳款,試寫程式完成以上功能。3. 請於本章的專題,新增一種查詢,可以逐一瀏覽每樣產品的銷售明細。習題1. 請將本章所有表單,融合在同一個專案。(未完22某次聯招共十人應考,

成績、志願表及各校缺額如下:編號成績志願182ABC283CAB392ABC442ACB553ABC667BCA768CAB872BAC974BAC1080BCA校名缺額A2B1C3(1)試完成分發作業,並印出每人錄取之學校或不錄取。(2)試印出各校錄取名單及錄取最低分數,輸出時以各校錄取最低分為輸出順序(提示:將個人成績由大而小排序,由最高分者先選學校,並將該校缺額減一,直到各校缺額均為零為止)。某次聯招共十人應考,

成績、志願表及各校缺額如下:編號成績志235.設某公司交易記錄如下表:(於次頁)

(1)試使用適當的元件將以上交易儲存至資料庫日期產品編號售價數量小計客戶編號業務員編號5/7/86a12002400x1q15/7/86b14001400x2p25/7/86a12003600x3q25/10/86b13001300x2p15/11/86b350021000y1p25/12/86a23002600y2p15/13/86a12001200x3p16/2/86a23001300x2q16/3/86b350021000x1q17/3/86b240031200x2q1(2)試完成以下統計表報:1.每日各產品銷售數量。2.每日各業務員銷售金額。3.每月各項產品銷售數量排行榜。4.每月各業務員銷售金額排行榜。5.每月各客戶購買金額排行榜。6.每月各組業務員(p、q)銷售金額排行榜(3)試完成以下線上查詢工作:1.輸入客戶編號而得其交易情形。2.輸入產品編號而得單價。3.輸入各日期而得其營業狀況。5.設某公司交易記錄如下表:(於次頁)

(1)試使用適當246.假設你要開一家銀行,請設計程式完成以下功能。可開戶。可存款、提款。可於每年6月20日及12月20日計算利息,利息計算以客戶每日餘額乘以日利率即可每位客戶有存摺,可列印其存提款狀況、利息所得及存款餘額。可列印每日客戶的存提款金額及排行榜等日報表功能。可列印每月客戶存提款金額及排行榜等月報表功能。可於螢幕瀏覽每位客戶的交易明細。7.假如你要開一家DVD/VCD出租店,請設計程式完

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论