【摘要】本文主要根據(jù)某醫(yī)藥企業(yè)營銷系統(tǒng)的需求分析,總結(jié)系統(tǒng)內(nèi)實體及聯(lián)系,結(jié)合需求分析與概念結(jié)構(gòu)設(shè)計,運用Microsoft SQL Server 2000數(shù)據(jù)庫管理系統(tǒng)建好表和相關(guān)約束,并在此基礎(chǔ)上用SQL語句實現(xiàn)數(shù)據(jù)庫查詢、連接等操作和觸發(fā)器、存儲器等對象設(shè)計。
【關(guān)鍵詞】營銷管系統(tǒng);實體;數(shù)據(jù)庫管理系統(tǒng)
一、系統(tǒng)主要業(yè)務(wù)流程
1.銷售業(yè)務(wù)工作流程
該醫(yī)藥企業(yè)銷售業(yè)務(wù)主要和商務(wù)部、財務(wù)部、倉庫有關(guān)。銷售業(yè)務(wù)是從業(yè)務(wù)員提出需貨請求開始的,銷售業(yè)務(wù)流程如圖1所示。
圖1 銷售業(yè)務(wù)流程圖
2.綜合工作流程
該企業(yè)的主要業(yè)務(wù)就是生產(chǎn)和銷售,新的營銷系統(tǒng)要能夠向生產(chǎn)部門提供原料和產(chǎn)品寄庫的功能,并覆蓋營銷公司(商務(wù)部、財務(wù)部)主要的銷售業(yè)務(wù),綜合業(yè)務(wù)流程如圖2所示。
圖2 綜合工作流程圖
圖3 各類表之間的關(guān)系
二、根據(jù)業(yè)務(wù)流程進(jìn)行系統(tǒng)功能模塊的劃分
在充分分析系統(tǒng)需求的基礎(chǔ)上,根據(jù)營銷業(yè)務(wù)流程的主要環(huán)節(jié),劃分系統(tǒng)的主要功能模塊。系統(tǒng)主要由如下六個功能模塊組成:即商務(wù)模塊、財務(wù)模塊、倉庫模塊、查詢模塊、報表模塊和系統(tǒng)管理模塊。
三、根據(jù)業(yè)務(wù)流程,模塊劃分進(jìn)行數(shù)據(jù)庫設(shè)計
1.數(shù)據(jù)庫表設(shè)計原則
數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ)。它把信息系統(tǒng)中大量的數(shù)據(jù)按一定的模型組織起來,提供存儲、維護(hù)、檢索數(shù)據(jù)的功能,使信息系統(tǒng)可以方便、及時、準(zhǔn)確地從數(shù)據(jù)庫中獲得所需的信息。一個信息系統(tǒng)的各個部份能否緊密地結(jié)合在一起以及如何結(jié)合,關(guān)鍵在數(shù)據(jù)庫。因此數(shù)據(jù)庫設(shè)計是信息系統(tǒng)開發(fā)和建設(shè)的重要組成部分。
在設(shè)計關(guān)系數(shù)據(jù)庫過程中,首先確定以下幾個原則:
(1)數(shù)據(jù)庫中的每一張表都必須符合下面幾個特征:
每一個單元的內(nèi)容只有一個值;每個字段的名稱都不相同;每條記錄的前后次序和字段的左右次序可以變化,不受限制;每一字段都必須有相應(yīng)的數(shù)據(jù)類型;沒有內(nèi)容完全相同的記錄。
(2)表中的數(shù)據(jù)必須規(guī)則完整
對于一個具體的數(shù)據(jù)庫,為了維護(hù)數(shù)據(jù)本身的完整,必須設(shè)置相應(yīng)的規(guī)則。
(3)在設(shè)計數(shù)據(jù)庫表時必須符合規(guī)范化
數(shù)據(jù)庫設(shè)計者的任務(wù)就是組織數(shù)據(jù),而組織數(shù)據(jù)的方法應(yīng)能消除不必要的重復(fù),并為所有必要信息提供快速查找路徑。為了達(dá)到這個目標(biāo)而把信息分離到各種獨立的表中去的過程,叫做規(guī)范化。
(4)滿足數(shù)據(jù)的完整性
所謂數(shù)據(jù)完整性就是要限制數(shù)據(jù)庫內(nèi)可能出現(xiàn)的非法值以保證數(shù)據(jù)庫的有效性。注意以下幾點:實體完整性;參考完整性;用戶定義的完整性。
在設(shè)計數(shù)據(jù)庫時,充分利用SQL Server 2000提供的可視化的建表工具,建立了系統(tǒng)所需的數(shù)據(jù)庫表,并用主鍵和外鍵表明了各表之間的關(guān)系。為提高查詢、統(tǒng)計的效率,還對有關(guān)數(shù)據(jù)庫表建立了相應(yīng)的索引。
表3-1 合同主表s_ht結(jié)構(gòu)
字段名 字段類型 寬度 允許空值 缺省值 字段含義
Id 字符型 10 否 系統(tǒng)流水號
Bh 字符型 10 否 合同編號
Khxgid 字符型 10 否 客戶相關(guān)ID號
Khxxid 字符型 10 否 客戶信息ID號
…… …… …… …… …… ……
表3-2 合同明細(xì)表s_htmx結(jié)構(gòu)
字段名 字段類型 寬度 允許空值 缺省值 字段含義
Id 字符型 10 否 系統(tǒng)流水號
htid 字符型 10 否 合同id號
xgdjid 字符型 10 否 相關(guān)單據(jù)id號
kcid 字符型 10 否 物品庫存id號
…… …… …… …… …… ……
表3-3 發(fā)票主表s_fp結(jié)構(gòu)
字段名 字段類型 寬度 允許空值 缺省值 字段含義
Id 字符型 10 否 系統(tǒng)流水號
Bh 字符型 10 否 發(fā)票編號
khxgid 字符型 10 否 客戶相關(guān)ID號
khxxid 字符型 10 否 客戶信息ID號
…… …… …… …… …… ……
表3-4 發(fā)票明細(xì)表s_fpmx結(jié)構(gòu)
字段名 字段類型 寬度 允許空值 缺省值 字段含義
Id 字符型 10 否 系統(tǒng)流水號
fpid 字符型 10 否 發(fā)票id號
xgdjid 字符型 10 否 相關(guān)單據(jù)id號
kcid 字符型 10 否 物品庫存id號
…… …… …… …… …… ……
表3-5 庫存臺帳表w_kctz結(jié)構(gòu)
字段名 字段類型 寬度 允許空值 缺省值 字段含義
Id 字符型 10 否 系統(tǒng)流水號
kcdjid 字符型 10 否 庫存單據(jù)id號
xgdjid 字符型 10 否 相關(guān)單據(jù)id號
kcid 字符型 10 否 物品庫存id號
ykcid 字符型 10 否 原庫存id號
sl 數(shù)值型 9 否 0 數(shù)量
…… …… …… …… …… ……
表3-6 倉位臺帳表w_cwtz結(jié)構(gòu)
字段名 字段類型 寬度 允許空值 缺省值 字段含義
Id 字符型 10 否 系統(tǒng)流水號
cwid 字符型 10 否 倉位id號
cwlb 字符型 10 否 倉位類別
xgdjid 字符型 10 否 相關(guān)單據(jù)id號
kcid 字符型 10 否 物品庫存id號
…… …… …… …… …… ……
2.主要數(shù)據(jù)表、視圖及存儲過程的設(shè)計
按照上述數(shù)據(jù)庫表的設(shè)計原則,結(jié)合系統(tǒng)的功能,主要將系統(tǒng)中的表分為如下幾個類別:各類表之間的關(guān)系如圖3所示。
(1)相關(guān)信息類表
存儲產(chǎn)品信息、業(yè)務(wù)員信息和客戶信息
(2)基礎(chǔ)字典類
存儲用戶信息、系統(tǒng)參數(shù)等方面的信息。
(3)合同類
存儲合同的基本情況和執(zhí)行情況。
(4)倉儲類
存儲產(chǎn)品的庫存信息和出、入庫、寄庫情況。
(5)財務(wù)類
存儲業(yè)結(jié)算和回款情況、賬務(wù)等信息。
其中:合同數(shù)據(jù)保存在s_ht表中,合同明細(xì)數(shù)據(jù)保存在s_htmx表中,在s_htmx表中設(shè)有htid字段,用于關(guān)聯(lián)s_ht表和s_htmx表;發(fā)票數(shù)據(jù)保存在s_fp表中,發(fā)票明細(xì)保存在s_fpmx表中,在s_fpmx表中設(shè)有htmxid、fpid等字段,htmxid用以關(guān)聯(lián)s_fpmx表和s_htmx表,fpid用以關(guān)聯(lián)s_fpmx表和s_fp表,在s_htmx表、s_fpmx表中均設(shè)有kcid(庫存id)用以關(guān)聯(lián)w_kc表。
視圖主要包括:
V_thd:從w_kcdj中查詢退貨單據(jù);V_rkd:從w_kcdj中查詢?nèi)霂靻螕?jù);V_qyd:從w_kcdj中查詢?nèi)訂螕?jù);V_ckd:從w_kcdj中查詢出庫單據(jù);V_jkd:從w_kcdj中查詢寄庫單據(jù)。
存儲過程主要包括如下幾個:
ck_pd_kcdjcw:倉庫盤點;S_insert_kh:將客戶、業(yè)務(wù)員、物品等信息插入到臨時表;Sale_lkd_zf:修改客戶和業(yè)務(wù)員的應(yīng)收帳,并插入帳款臺帳表。
3.基礎(chǔ)數(shù)據(jù)表的設(shè)計
系統(tǒng)中數(shù)據(jù)表繁多,下面列舉出系統(tǒng)中運用比較典型的合同、發(fā)票、庫存、字典等表的結(jié)構(gòu)進(jìn)行說明。
(1)合同主表結(jié)構(gòu)
表3-1給出了合同主表的結(jié)構(gòu)。
(2)合同明細(xì)表
表3-2給出了合同明細(xì)表的結(jié)構(gòu)。
(3)發(fā)票主表
表3-3給出了發(fā)票表的結(jié)構(gòu)。
(4)發(fā)票明細(xì)表
表3-4給出了發(fā)票明細(xì)表的結(jié)構(gòu)。
(5)庫存臺帳
表3-5給出了庫存臺帳表的結(jié)構(gòu)。
(6)倉位臺帳表
表3-6給出了倉位臺帳表的結(jié)構(gòu)。
四、總結(jié)
根據(jù)某醫(yī)藥企業(yè)業(yè)務(wù)流程,功能模塊的劃分等具體情況,設(shè)計某醫(yī)藥營銷系統(tǒng)數(shù)據(jù)庫。加深了對數(shù)據(jù)庫課程知識的理解。由于時間倉促,還有很多不足之處,在今后的學(xué)習(xí)中我會加強(qiáng)理論的實踐的結(jié)合,通過不斷摸索來彌補(bǔ)自己在數(shù)據(jù)庫設(shè)計方面的差距。
參考文獻(xiàn)
[1]孟凡榮編.數(shù)據(jù)庫原理與應(yīng)用[M].徐州:中國礦業(yè)大學(xué)出版社,2004.
[2]姜晶.醫(yī)藥企業(yè)營銷管理系統(tǒng)的設(shè)計與實現(xiàn)[D].蘇州大學(xué)碩士論文,2005.
[3]秦緒偉.CIMS環(huán)境下的集成化庫存管理系統(tǒng)的研究與開發(fā)[D].東北大學(xué)碩士學(xué)位論文,2002.