基于Web的庫存管理及訂購系統(tǒng)開發(fā)案例-_第1頁
基于Web的庫存管理及訂購系統(tǒng)開發(fā)案例-_第2頁
基于Web的庫存管理及訂購系統(tǒng)開發(fā)案例-_第3頁
基于Web的庫存管理及訂購系統(tǒng)開發(fā)案例-_第4頁
基于Web的庫存管理及訂購系統(tǒng)開發(fā)案例-_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

基于Web的庫存管理及訂購系統(tǒng)開發(fā)案例1.系統(tǒng)需求分析

經(jīng)過需求調(diào)研,對基于Web的庫存管理及網(wǎng)上訂購的業(yè)務(wù)流程進(jìn)行分析。庫存的變化通常是通過入庫、出庫操作來進(jìn)行。系統(tǒng)對每個(gè)入庫操作均要求用戶填寫入庫單,對每個(gè)出庫操作均要求用戶填寫出庫單,網(wǎng)上訂購則更直接,通過訂購系統(tǒng)在網(wǎng)上直接下單。在完成出入庫操作的同時(shí),可以進(jìn)行增加、刪除和修改數(shù)據(jù)記錄等操作。用戶可以隨時(shí)進(jìn)行各種查詢、統(tǒng)計(jì)、報(bào)表打印、賬目核對等工作,也可以用圖表等形式反映查詢結(jié)果。

(1)需求問題提出

在使用本系統(tǒng)之前,企業(yè)通過手工維護(hù)“數(shù)據(jù)表”來管理原料與產(chǎn)品庫存的數(shù)據(jù)。在使用中遇到很多問題,主要包括:

1)文件級共享,共享性差,安全性低;

2)實(shí)時(shí)性差,“數(shù)據(jù)表”中的內(nèi)容只有及時(shí)保存后,其它電腦才能讀到,另外,不能允許兩個(gè)以上的人同時(shí)更新庫存文件;

3)查詢、統(tǒng)計(jì)等操作不方便;

4)以前根本不能實(shí)現(xiàn)Web網(wǎng)上訂購功能。

在充分了解原“數(shù)據(jù)表”工作模式,多次深入實(shí)際調(diào)研后,基本了解了企業(yè)庫存管理及網(wǎng)上訂購系統(tǒng)對數(shù)據(jù)與處理的需求。

本系統(tǒng)的主要處理的數(shù)據(jù)有:產(chǎn)品與坯料的入、出庫信息;產(chǎn)品與坯料的實(shí)時(shí)庫存信息;產(chǎn)品與坯料月明細(xì)庫存信息(如包括每產(chǎn)品每天的入出庫信息);產(chǎn)品與坯料月區(qū)段統(tǒng)計(jì)表(包括累計(jì)月初值、月入庫、月出庫、月末庫存值等情況);產(chǎn)品與坯料月末累計(jì)統(tǒng)計(jì)表(包括累計(jì)入庫、累計(jì)出庫、月末庫存值等情況);模具庫存信息。網(wǎng)上訂購需要有:用戶一次訂購信息包括訂購明細(xì)信息;月份的設(shè)定信息(如某月從某日到某日的信息等);其它還包括從安全性與權(quán)限控制考慮的各級別用戶信息等。總體上而言,輸入入出庫信息后,能得到庫存、各種統(tǒng)計(jì)、匯總、分類信息等,Web用戶能查閱庫存信息,決定網(wǎng)上訂購量等。

(2)功能需求分析

在數(shù)據(jù)庫服務(wù)器及SQLServer2005中,創(chuàng)建庫存管理數(shù)據(jù)庫KCGL,在數(shù)據(jù)庫上建立各關(guān)系模式對應(yīng)的庫表,并確定主鍵、索引、參照完整性、用戶自定義完整性等。

1)C/S模式實(shí)現(xiàn)的庫存管理系統(tǒng)功能需求:

●對各原始數(shù)據(jù)表實(shí)現(xiàn)輸入、修改、刪除、添加、查詢、打印等基本操作;

●方便及時(shí)多用戶地錄入產(chǎn)品、坯料、模具等入出庫單數(shù)據(jù);

●方便查閱、核對入出庫單數(shù)據(jù),并能方便維護(hù)產(chǎn)品、坯料、模具等入出庫單原始數(shù)據(jù);

●以組合方式快速查閱產(chǎn)品、坯料、模具等入出庫單原始數(shù)據(jù);

●按一鍵完成對庫存、按月或分日對產(chǎn)品、坯料的統(tǒng)計(jì);

●自動產(chǎn)生產(chǎn)品或坯料的實(shí)時(shí)庫存;

●以樹型結(jié)構(gòu)或表格方式方便查閱各類各種產(chǎn)品或坯料的實(shí)時(shí)庫存;

●由分類統(tǒng)計(jì)值,反查其明細(xì)清單;

●把主要表或查詢信息按需導(dǎo)出到“數(shù)據(jù)表”中,支持原有手工處理要求,導(dǎo)出到“數(shù)據(jù)表”的數(shù)據(jù)能用于保存或排版打印等需要;

●分級別用戶管理;

●月份設(shè)定與統(tǒng)計(jì)管理;

●高級管理員的管理操作如:系統(tǒng)數(shù)據(jù)的備份與恢復(fù)、系統(tǒng)用戶的維護(hù)、動態(tài)SQL命令操作、系統(tǒng)日志查閱等;

●系統(tǒng)設(shè)計(jì)成傳統(tǒng)的Windows多文檔多窗口操作界面,要求系統(tǒng)具有操作方便、簡捷等特點(diǎn);

●用戶管理功能,包括用戶登錄、注冊新用戶、更改用戶密碼等功能;

●其它你認(rèn)為子系統(tǒng)應(yīng)有的查詢、統(tǒng)計(jì)功能;

●要求所設(shè)計(jì)系統(tǒng)界面友好,功能安排合理,操作使用方便,并能進(jìn)一步考慮子系統(tǒng)在安全性、完整性、并發(fā)控制、備份恢復(fù)等方面的功能要求。

2)B/S模式實(shí)現(xiàn)的網(wǎng)上訂購系統(tǒng)功能需求:

●實(shí)現(xiàn)網(wǎng)上用戶的注冊與登錄,登錄用戶的管理;

●方便查閱(如分頁查詢)產(chǎn)品及庫存信息,方便產(chǎn)品選購;

●實(shí)現(xiàn)基本的購物車功能;

●完成訂購、實(shí)現(xiàn)網(wǎng)上支付過程,并自動產(chǎn)生訂購明細(xì)數(shù)據(jù),產(chǎn)生產(chǎn)品Web銷售對應(yīng)的出庫記錄;自動更改產(chǎn)品庫存;

●事后能查閱自己的歷史訂單及明細(xì)數(shù)據(jù);

●具有商務(wù)網(wǎng)站的基本功能,如:網(wǎng)站公告、系統(tǒng)簡介、自己的用戶信息維護(hù)、找回密碼、聯(lián)系、友情鏈接等等;

●要求Web網(wǎng)頁系統(tǒng)要運(yùn)行穩(wěn)定、可靠,操作簡單、方便。

(3)庫存管理系統(tǒng)C/S模式實(shí)現(xiàn)問題

基于以上系統(tǒng)涉及的處理數(shù)據(jù),C/S模式實(shí)現(xiàn)的庫存管理系統(tǒng)具體涉及到問題:

1)方便及時(shí)多用戶地錄入產(chǎn)品、坯料、模具等入出庫單數(shù)據(jù);

2)方便查閱、核對入出庫單數(shù)據(jù),并方便維護(hù)產(chǎn)品、坯料、模具等入出庫單原始數(shù)據(jù);

3)以組合方式快速查閱產(chǎn)品、坯料、模具等入出庫單原始數(shù)據(jù);

4)按一鍵完成對庫存、按月或分日對產(chǎn)品、坯料的統(tǒng)計(jì)

5)自動產(chǎn)生產(chǎn)品或坯料的實(shí)時(shí)庫存;

6)以樹型結(jié)構(gòu)或表格方式方便查閱各類各種產(chǎn)品或坯料的實(shí)時(shí)庫存;

7)由分類統(tǒng)計(jì)值,反查其明細(xì)清單;

8)把主要表或查詢信息按需導(dǎo)出到“數(shù)據(jù)表”中,支持原有手工處理要求,導(dǎo)出到“數(shù)據(jù)表”的數(shù)據(jù)能用于保存或排版打印等需要;

9)分級別用戶管理;

10)月份設(shè)定與統(tǒng)計(jì)管理等。

(4)業(yè)務(wù)流程及數(shù)據(jù)流圖在認(rèn)真調(diào)查分析有關(guān)信息需求的基礎(chǔ)上,可得到用于庫存管理業(yè)務(wù)處理的產(chǎn)品庫存管理子系統(tǒng)的業(yè)務(wù)流程圖,如圖8-7。從而可以得到相應(yīng)的數(shù)據(jù)流圖。

同樣,通過對Web網(wǎng)上訂購子系統(tǒng)的業(yè)務(wù)流程圖分析,可以得到其中“網(wǎng)上訂購”部分的數(shù)據(jù)流圖,如圖8-8所示。

(5)系統(tǒng)數(shù)據(jù)字典

數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理的關(guān)系,數(shù)據(jù)字典則是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和處理過程五個(gè)部分。以下數(shù)據(jù)字典卡片的形式來舉例說明。

1)“產(chǎn)品入庫單”數(shù)據(jù)結(jié)構(gòu):

名字:產(chǎn)品入庫單

別名:產(chǎn)品生產(chǎn)量

描述:每天生產(chǎn)或加工車間,以入庫單形式來記錄其產(chǎn)量,并登記入庫

定義:產(chǎn)品入庫單=入庫單號+大類+規(guī)格+材質(zhì)+單位+生產(chǎn)車間+成本+

日期+入庫值+經(jīng)辦人

位置:保存到入出庫表或打印保存

2)“產(chǎn)品入庫單”數(shù)據(jù)結(jié)構(gòu)之?dāng)?shù)據(jù)項(xiàng):

名字:入庫單號

名字:大類

別名:順序號

別名:產(chǎn)品大類名

描述:唯一標(biāo)識某產(chǎn)品入庫的數(shù)字編號

描述:產(chǎn)品的第一大分類名

定義:整型數(shù)

定義:字符型漢字名稱,漢字?jǐn)?shù)<=3

位置:產(chǎn)品入庫表、產(chǎn)品入出庫表

位置:產(chǎn)品入庫表、產(chǎn)品入出庫表、

產(chǎn)品庫存表、各統(tǒng)計(jì)表

其它數(shù)據(jù)項(xiàng)的定義略。

3)數(shù)據(jù)流

數(shù)據(jù)流是數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)內(nèi)傳輸?shù)穆窂健G懊嬉旬嫵龅臄?shù)據(jù)流圖能較好地反映出數(shù)據(jù)的前后流動關(guān)系,除此外還能描述為(以“入庫單數(shù)據(jù)流”來說明):

數(shù)據(jù)流名:入庫單數(shù)據(jù)流

說明:“產(chǎn)品入庫單”數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)內(nèi)的流向

數(shù)據(jù)流來源:管理員接收事務(wù)

數(shù)據(jù)流去向:庫存處理事務(wù)

平均流量:每天幾十次

高峰期流量:每天上百次

4)數(shù)據(jù)存儲

數(shù)據(jù)存儲是數(shù)據(jù)結(jié)構(gòu)停留或保存的地方,也是數(shù)據(jù)流的來源和去向之一。它可以是手工文檔或手工憑單,也可是計(jì)算機(jī)文檔。對數(shù)據(jù)存儲的描述通常包括(以入庫表數(shù)據(jù)存儲為例):

數(shù)據(jù)存儲名:入庫表

說明:入庫單數(shù)據(jù),作為原始數(shù)據(jù)需要保存與備查

編號:入庫單為唯一標(biāo)識,順序整數(shù),從1開始每次增加1

輸入的數(shù)據(jù)流:入庫單數(shù)據(jù)流,來自生產(chǎn)車間

輸出的數(shù)據(jù)流:出庫單數(shù)據(jù)流,用于銷售部門銷售

數(shù)據(jù)結(jié)構(gòu):“產(chǎn)品入庫單”、“產(chǎn)品出庫單”、“產(chǎn)品庫存”

數(shù)據(jù)量:一天,100*100=10000字節(jié)

存取頻度:每小時(shí)存取更新10-20次,查詢>=100次

存取方式:聯(lián)機(jī)處理、檢索與更新、順序檢索與隨機(jī)檢索

數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理的關(guān)系,數(shù)據(jù)字典則是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和處理過程五個(gè)部分。以下數(shù)據(jù)字典卡片的形式來舉例說明。

“產(chǎn)品入庫單”數(shù)據(jù)結(jié)構(gòu):

名字:產(chǎn)品入庫單

別名:產(chǎn)品生產(chǎn)量

描述:每天生產(chǎn)或加工車間,以入庫單形式來記錄其產(chǎn)量,并登記入庫

定義:產(chǎn)品入庫單=入庫單號+大類+規(guī)格+材質(zhì)+單位+生產(chǎn)車間+成本+日期+入庫值+經(jīng)辦人

位置:保存到入出庫表或打印保存

5)處理過程

處理過程的具體處理邏輯一般用判定表或判定樹來描述。數(shù)據(jù)字典中只需要描述處理過程的說明性信息。如“實(shí)時(shí)產(chǎn)品庫存計(jì)算”的處理過程說明如下:

處理過程名:實(shí)時(shí)產(chǎn)品庫存計(jì)算

說明:隨著入庫單、出庫單的不斷輸入,要能實(shí)時(shí)計(jì)算出當(dāng)前各產(chǎn)品的庫存

輸入:入庫單數(shù)據(jù)流,來自生產(chǎn)車間;出庫單數(shù)據(jù)流,來自銷售部門銷售

輸出:計(jì)算出各產(chǎn)品當(dāng)前庫存

處理:產(chǎn)品庫存計(jì)算的功能就是實(shí)時(shí)計(jì)算產(chǎn)品庫存,處理頻度:每小時(shí)20-40次,每當(dāng)有入庫單數(shù)據(jù)流或出庫單數(shù)據(jù)流發(fā)生都要引發(fā)庫存計(jì)算事務(wù),計(jì)算庫存涉及的數(shù)據(jù):每小時(shí)4kb-10kb,希望在發(fā)生入庫或出庫信息時(shí)實(shí)時(shí)計(jì)算庫存。

通過以上幾個(gè)例子說明了數(shù)據(jù)字典的基本表示方法,只是起到引導(dǎo)的作用。完整、詳盡的系統(tǒng)數(shù)據(jù)字典是在需求分析階段,充分調(diào)研、分析、討論的基礎(chǔ)上建立,并將在數(shù)據(jù)庫設(shè)計(jì)過程中不斷修改、充實(shí)、完善的,是數(shù)據(jù)庫應(yīng)用系統(tǒng)良好設(shè)計(jì)與實(shí)現(xiàn)的基礎(chǔ)與保障。

(6)具體處理的主要數(shù)據(jù)

B/S模式實(shí)現(xiàn)的網(wǎng)上訂購系統(tǒng)的具體處理的主要數(shù)據(jù)要求:

1)可以實(shí)現(xiàn)網(wǎng)上用戶的注冊與登錄,登錄用戶的管理;

2)方便查閱(如分頁查詢)產(chǎn)品及庫存信息,方便產(chǎn)品選購

3)實(shí)現(xiàn)基本的購物車功能;

4)完成訂購、實(shí)現(xiàn)網(wǎng)上支付過程,并自動產(chǎn)生訂購明細(xì)數(shù)據(jù),產(chǎn)生產(chǎn)品Web銷售對應(yīng)的出庫記錄;自動更改產(chǎn)品庫存;

5)事后能查閱自己的歷史訂單及明細(xì)數(shù)據(jù);

6)具有商務(wù)網(wǎng)站的基本功能,如:網(wǎng)站公告、系統(tǒng)簡介、用戶信息維護(hù)、找回密碼、聯(lián)系、友情鏈接等等。

C/S與B/S兩類系統(tǒng)共用同一個(gè)數(shù)據(jù)庫,數(shù)據(jù)間緊密依賴、密切關(guān)聯(lián)與聯(lián)動,數(shù)據(jù)庫則集中存放在企業(yè)服務(wù)器上的SQLServer2005的DBMS中。

(7)系統(tǒng)需要管理的實(shí)體信息

1)Web訂單:順序號、訂單號、訂單日期、訂購總額、支付方式、確認(rèn)標(biāo)志、地址、email地址、備注等;

2)Web用戶表:用戶編號、用戶名、口令、email地址、地區(qū)、地址、郵編、QQ號、電話、用戶級別、其它;

3)產(chǎn)品年月設(shè)置:年月、起始日期、終止日期、創(chuàng)建標(biāo)志、生成次數(shù)、已結(jié)轉(zhuǎn)、已刪除;

4)產(chǎn)品入庫單:順序號、大類、規(guī)格、材質(zhì)、單位、生產(chǎn)車間、成本、日期、入庫值、經(jīng)辦人、處理標(biāo)記等;

5)產(chǎn)品出庫單:順序號、大類、規(guī)格、材質(zhì)、單位、發(fā)貨去向、單價(jià)、日期、出庫值、經(jīng)辦人、處理標(biāo)記等;

6)產(chǎn)品實(shí)時(shí)庫存:大類、規(guī)格、材質(zhì)、產(chǎn)品入庫、產(chǎn)品出庫、產(chǎn)品庫存、圖片、圖片文件、單價(jià)、折扣率、產(chǎn)品說明、順序號等;

7)坯料年月設(shè)置:年月、起始日期、終止日期、創(chuàng)建標(biāo)志、生成次數(shù)、已結(jié)轉(zhuǎn)、已刪除;

8)坯料入庫單:順序號、材質(zhì)、鋼號、規(guī)格、單位、鋼產(chǎn)地、單價(jià)、日期、入庫值、經(jīng)辦人、處理標(biāo)記等;

9)坯料出庫單:順序號、材質(zhì)、鋼號、規(guī)格、單位、領(lǐng)用車間、單價(jià)、日期、出庫值、經(jīng)辦人、處理標(biāo)記等;

10)坯料實(shí)時(shí)庫存:材質(zhì)、鋼號、規(guī)格、入庫量、出庫量、庫存量、圖片等;

11)模具庫存:順序號、分類、厚度、乘、寬度、庫存數(shù)量、備注等;

12)系統(tǒng)用戶:用戶編號、用戶姓名、口令、等級等。另外,還有本系統(tǒng)需要管理的實(shí)體聯(lián)系信息,主要包括:

1)Web訂單與產(chǎn)品庫存間的“Web訂單明細(xì)”聯(lián)系要反映:訂單號、產(chǎn)品編號、訂購量等;

2)“月累計(jì)庫存”聯(lián)系要反映:年月、大類、規(guī)格、產(chǎn)量、銷量、產(chǎn)品庫存等;

3)“產(chǎn)品月區(qū)段庫存”聯(lián)系要反映:年月、大類、規(guī)格、期初值、產(chǎn)量、銷量、期末值等;

4)“月產(chǎn)品明細(xì)庫存”(不同月份屬性個(gè)數(shù)也不同)聯(lián)系要反映:年月、大類、規(guī)格、材質(zhì)、單位、發(fā)貨去向、期初值、期末值、1號、2號、......31號等;

5)“坯料累計(jì)庫存”聯(lián)系要反映:年月、規(guī)格、鋼產(chǎn)地、入庫量、出庫量、庫存量等;

6)“坯料月區(qū)段庫存”聯(lián)系要反映:年月、規(guī)格、鋼產(chǎn)地、期初值、入庫、出庫、期末值等;

7)“坯料月區(qū)段庫存2”聯(lián)系反映:年月、規(guī)格、鋼產(chǎn)地、期初值、入庫、出庫、期末值等;

8)“月坯料明細(xì)庫存”(不同年月屬性個(gè)數(shù)也不同)聯(lián)系要反映:年月、材質(zhì)、鋼號、規(guī)格、單位、鋼產(chǎn)地、期初值、期末值、1號、2號、…、31號等。

2.系統(tǒng)設(shè)計(jì)

(1)數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)

數(shù)據(jù)庫在一個(gè)信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的好壞將直接對應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響。合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)存儲的效率,保證數(shù)據(jù)的完整和一致。同時(shí),合理的數(shù)據(jù)庫結(jié)構(gòu)也將有利于程序的實(shí)現(xiàn)。根據(jù)實(shí)體聯(lián)系分析可以畫出基于Web庫存管理與網(wǎng)上訂購系統(tǒng)的E-R圖,如圖8-9所示。

根據(jù)實(shí)體之間的聯(lián)系,可以畫出各實(shí)體之間的關(guān)系E-R圖,如圖8-10至圖8-15所示。以此可以建立相應(yīng)的關(guān)系數(shù)據(jù)表。

實(shí)體與實(shí)體間的關(guān)系E-R圖,如下8-16所示。

(2)系統(tǒng)功能模塊設(shè)計(jì)

1)主要功能模塊

庫存系統(tǒng)包含6個(gè)主要功能模塊,即系統(tǒng)模塊、入庫業(yè)務(wù)管理模塊、出庫業(yè)務(wù)管理模塊、退料業(yè)務(wù)管理模塊(還庫業(yè)務(wù)管理模塊)、盤點(diǎn)業(yè)務(wù)管理模塊(報(bào)表輸出)、需求管理模塊。對于每個(gè)功能模塊,都包含數(shù)據(jù)錄入、編輯、查詢、統(tǒng)計(jì)、打印、應(yīng)急、幫助等功能。

2)開發(fā)步驟

開發(fā)一個(gè)典型數(shù)據(jù)庫應(yīng)用程序,需要3個(gè)步驟:數(shù)據(jù)庫設(shè)計(jì)、GUI用戶界面設(shè)計(jì)和業(yè)務(wù)邏輯實(shí)現(xiàn)。后面將具體介紹相關(guān)步驟,GUI設(shè)計(jì)通常需要和業(yè)務(wù)邏輯交替進(jìn)行。

對庫存管理系統(tǒng)各項(xiàng)功能進(jìn)行集中、分類,按照結(jié)構(gòu)化程序設(shè)計(jì)的要求,可得出系統(tǒng)的功能模塊圖如圖6-17,而Web網(wǎng)上訂購系統(tǒng)的功能模塊如圖6-18所示。

(3)數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)

1)數(shù)據(jù)庫關(guān)系模式

按照實(shí)體-聯(lián)系圖轉(zhuǎn)化為關(guān)系模式的方法,本系統(tǒng)共使用到至少23個(gè)關(guān)系模式(含4個(gè)輔助關(guān)系),在此只給出23個(gè)表名。

轉(zhuǎn)化與設(shè)計(jì)關(guān)系模式的說明:

①實(shí)體“Web用戶”與實(shí)體“訂單”間的一對多“訂購”聯(lián)系,通過把“用戶編號”加到“訂單”實(shí)體中而合并到“訂單”多方實(shí)體。

②通用的把一對多聯(lián)系合并到多方實(shí)體的聯(lián)系還有:“訂單”與“產(chǎn)品出庫”間的“銷售”聯(lián)系、“產(chǎn)品庫存”與“產(chǎn)品入庫”間的“入庫”、“產(chǎn)品庫存”與“產(chǎn)品出庫”間的“出庫”、“月份”與“產(chǎn)品庫存、產(chǎn)品入庫或產(chǎn)品出庫等”間的“月明細(xì)、月庫存、月累計(jì)等”聯(lián)系。

③“產(chǎn)品入庫單”與“產(chǎn)品出庫單”兩實(shí)體屬性稍有區(qū)別,主要是入庫單含生產(chǎn)車間與產(chǎn)品成本,而出庫單上是發(fā)貨去向與銷售單價(jià),從簡單化與使用單位處理習(xí)慣出發(fā),把它們設(shè)計(jì)成同類屬性。這樣,考慮把產(chǎn)品入庫與產(chǎn)品出庫合并起來形成一個(gè)關(guān)系模式,稱為“產(chǎn)品入出庫表”,其中“入”與“出”主要通過“出入庫值”的正負(fù)來體現(xiàn),值為正是入庫值,值為負(fù)是出庫值。同樣的情況還有“坯料入出庫表”

表名與中文屬性名對應(yīng)的英文名及各表主碼屬性,參閱下面各表的T-SQL創(chuàng)建命令。

2)數(shù)據(jù)庫及表結(jié)構(gòu)的創(chuàng)建

設(shè)本系統(tǒng)使用的數(shù)據(jù)庫名為KCGL,根據(jù)已設(shè)計(jì)出的關(guān)系模式及各模式的完整性的要求,現(xiàn)在就可以在SQLServer2005數(shù)據(jù)庫系統(tǒng)中實(shí)現(xiàn)這些邏輯結(jié)構(gòu)。下面是創(chuàng)建數(shù)據(jù)庫及以產(chǎn)品相關(guān)為主的表結(jié)構(gòu)的T-SQL命令(SQLServer中的SQL命令):

CREATEDATABASEKCGL;USEKCGL;

Web訂單表(weborders),其屬性對應(yīng)的含義:順序號,用戶編號,訂單號,訂單日期,訂購總額,支付方式,確認(rèn)標(biāo)志,地址,email地址,備注。

3)數(shù)據(jù)庫表關(guān)系圖

數(shù)據(jù)庫名稱:kcgl,創(chuàng)建至少23張用戶表后,表間能形成如圖6-13的關(guān)系圖。

4)基于數(shù)據(jù)庫表的視圖與索引

①視圖:基于該數(shù)據(jù)庫庫表關(guān)系圖6-13,可定義出各種常用的用戶視圖。如:createviewwebuser_ordersas

/*用戶訂單表*/SELECT

u.idAS序號,u.UserNameAS用戶名,u.EmailAS郵箱,o.orderidAS訂單號,

o.ordertimeAS訂單日期,o.summoneyAS訂購總額FROM

dbo.webuserASuINNERJOINdbo.webordersASoONu.id=o.userid;createviewweborders_details_productsas

/*訂單產(chǎn)品明細(xì)表*/SELECTo.orderidAS訂單號,o.ordertimeAS訂單日期,o.summoneyAS訂購總額,p.dlAS大類,

p.ggAS規(guī)格,p.cz1AS材質(zhì),d.dglAS訂購量FROM

dbo.webordersASoINNERJOINdbo.weborderdetailsASdONo.orderid=d.orderidINNERJOINdbo.tccpsskcASpONd.cpid=p.id;

按需要可以定義出不同的具體視圖。

②索引:從系統(tǒng)運(yùn)行性能考慮,可以對系統(tǒng)數(shù)據(jù)庫中記錄數(shù)多、查詢與統(tǒng)計(jì)等操作頻繁的表(如成品入出庫表tccprck、坯料入出庫表tcplrck等)創(chuàng)建適量索引,例如:

在成品入出庫表tccprck的dl、gg和cz1三個(gè)屬性上創(chuàng)建非聚集非唯一索引:

CREATENONCLUSTEREDINDEX[IX_tccprck_dlggcz]ON[dbo].[tccprck](dlASC,ggASC,cz1ASC)

在坯料入出庫表tccprck的cz1、cz2和gg三個(gè)屬性上創(chuàng)建非聚集非唯一索引:

CREATENONCLUSTEREDINDEX[IX_tcplrck_cz12gg]ON[dbo].[tcplrck](cz1ASC,cz2ASC,ggASC)

系統(tǒng)數(shù)據(jù)庫庫表關(guān)系圖如圖6-19所示。其它表的所需索引,由于篇幅有限不再贅述。

【注意】表索引對性能的影響以及是否采用,需要通過實(shí)際系統(tǒng)的運(yùn)行比較進(jìn)行判定。

5)數(shù)據(jù)庫初始數(shù)據(jù)的加載

數(shù)據(jù)庫創(chuàng)建后,為下一階段窗體模塊、WEB網(wǎng)頁模塊的設(shè)計(jì)與調(diào)試作準(zhǔn)備,需要整體加載數(shù)據(jù),加載數(shù)據(jù)可以通過界面手工錄入,也可設(shè)計(jì)執(zhí)行插入Insert命令集表數(shù)據(jù),在準(zhǔn)備數(shù)據(jù)過程中一般要注意以下幾點(diǎn):

1)盡可能使用真實(shí)數(shù)據(jù),錄入數(shù)據(jù)時(shí)可發(fā)現(xiàn)一些結(jié)構(gòu)設(shè)計(jì)的不足之處,并能盡早更正;

2)由于表內(nèi)或表之間已設(shè)置了系統(tǒng)所要的完整性約束規(guī)則,如外碼、主碼等,為此,加載數(shù)據(jù)時(shí),可能有時(shí)序問題,如在生成“產(chǎn)品月統(tǒng)計(jì)表”前,一定要先在“產(chǎn)品年月設(shè)置表”中先錄入該月的數(shù)據(jù)記錄,因?yàn)椤爱a(chǎn)品月統(tǒng)計(jì)表”中的年月屬性值要參照“產(chǎn)品年月設(shè)置表”中的年月屬性值;

3)加載數(shù)據(jù),應(yīng)盡可能全面些,能反映各種表數(shù)據(jù)與表數(shù)據(jù)間的關(guān)系,這樣便于模塊設(shè)計(jì)時(shí),程序的充分調(diào)試。一般全部加載后,對數(shù)據(jù)庫作備份,因?yàn)闇y試中會頻繁更改或無意損壞數(shù)據(jù),而建立起完整的測試數(shù)據(jù)庫數(shù)據(jù)是很費(fèi)時(shí)的。4.主窗體的設(shè)計(jì)與主要模塊實(shí)現(xiàn)

(1)庫存管理系統(tǒng)的主窗體設(shè)計(jì)

本系統(tǒng)采用了多文檔界面,為此需在本系統(tǒng)項(xiàng)目中添加一個(gè)多文檔窗體,命名為frmmain。在主窗體中,可加入主菜單、工具欄與狀態(tài)欄等,如圖8-20。

(2)主窗體的菜單設(shè)計(jì)

在主窗體中,單擊鼠標(biāo)右鍵,選擇彈出式菜單中的“menueditor…”命令,創(chuàng)建如圖8-21所示的應(yīng)用系統(tǒng)菜單結(jié)構(gòu)。

(3)成品出庫或入庫錄入模塊的實(shí)現(xiàn)

企業(yè)成品(產(chǎn)品)的出庫或入庫錄入窗口,其運(yùn)行界面(只列出子窗口,以下同)示意圖,如圖8-22所示。出庫或入庫錄入組合查詢窗口如圖8-23所示。

成品出入庫錄入窗口,以表格形式提供對入庫或出庫單的錄入、修改、刪除等維護(hù)原始單據(jù)數(shù)據(jù)的功能。功能設(shè)計(jì)操作簡單又直觀,具體包括:錄入或添加數(shù)據(jù)時(shí)總是從數(shù)據(jù)最后一行的下面空白行進(jìn)行,系統(tǒng)設(shè)計(jì)成具有繼承功能,連續(xù)錄入時(shí)空白行上會出現(xiàn)上次輸入的記錄值,你只要修改幾個(gè)不同列的值,新的一行就錄入完成了;選中某行后,按“刪除”按鈕能直接刪除輸錯(cuò)的記錄(需要有相應(yīng)的權(quán)限);修改非常直觀,光標(biāo)定位到某行某列直接修改即可;為了減少日積月累后大量數(shù)據(jù)的加載與顯示,可以通過左下的“顯示全部”復(fù)選框控制是顯示全部還是近一個(gè)月的單據(jù)數(shù)據(jù);當(dāng)多用戶同時(shí)錄入時(shí),按“刷新”按鈕能及時(shí)查看其它錄入者最新錄入的數(shù)據(jù)。

成品出入庫數(shù)據(jù)錄入后,除了能在錄入窗口中查找到出入庫原始數(shù)據(jù)外,還可以通過如圖8-21成品出庫或入庫組合查詢窗口中更有效的進(jìn)行查詢。

(4)成品月明細(xì)庫存生成與查詢模塊的實(shí)現(xiàn)

成品月明細(xì)庫存生成與查詢模塊的運(yùn)行界面如圖8-24所示,模塊實(shí)現(xiàn)簡述:利用組合條件實(shí)現(xiàn)查詢,能方便并快速地查找到信息。本功能窗體被設(shè)計(jì)成上下兩部分,上部分?jǐn)?shù)據(jù)網(wǎng)格控件顯示查到的記錄;下部分組合3種條件,每個(gè)條件能指定獨(dú)立的比較運(yùn)算符以形成條件表達(dá)式,當(dāng)按“顯示”按鈕時(shí),程序能組合你的各選擇條件形成最終組合條件以查詢并顯示記錄;而“生成并顯示”按鈕能完成成品月明細(xì)庫存的及時(shí)生成;選擇網(wǎng)格數(shù)據(jù)的某行(代表某產(chǎn)品)與某列(代表某天等),再按“詳細(xì)”按鈕,能彈出窗體顯示相應(yīng)數(shù)據(jù)對應(yīng)的入出庫原始記錄,以便對原始數(shù)據(jù)的查閱與核對。圖8-24窗口上使用到的主要控件有:

DataGrid1數(shù)據(jù)網(wǎng)格控件,顯示并操作成品出入庫表

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論