汽車銷售管理系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
汽車銷售管理系統(tǒng)的設(shè)計與實現(xiàn)_第2頁
汽車銷售管理系統(tǒng)的設(shè)計與實現(xiàn)_第3頁
汽車銷售管理系統(tǒng)的設(shè)計與實現(xiàn)_第4頁
汽車銷售管理系統(tǒng)的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目 錄一、引言1.1、編寫目的11.2、 定義2.1.3、數(shù)據(jù)庫設(shè)計步驟3二、需求分析2.1、功能分析32.2、業(yè)務(wù)活動52.3、數(shù)據(jù)字典72.4、數(shù)據(jù)流圖11三、結(jié)構(gòu)設(shè)計3.1、概念設(shè)計113.2、總體e-r圖設(shè)計123.3、邏輯設(shè)計143.4、物理設(shè)計14四、運用設(shè)計4.1、程序源碼與用戶界面17 4.3、系統(tǒng)運行與維護(hù)19五、參考文獻(xiàn)5.1、參考文獻(xiàn)201引言1.1編寫目的目前大多數(shù)廠商忽略了汽車銷售管理系統(tǒng)的重要性,而本系統(tǒng)專為具有一定規(guī)模和經(jīng)濟(jì)條件的大型汽車廠設(shè)計。從進(jìn)貨管理:車輛采購、車輛入庫,銷售管理到車輛銷售、收益統(tǒng)計等,為每個環(huán)節(jié)明確分工,并通過可視化的軟件支持,有效減小了人

2、為差錯的概率,代之以高效、便捷、準(zhǔn)確的數(shù)字化服務(wù)系統(tǒng),使汽車銷售管理更加規(guī)范化。根據(jù)所學(xué)的數(shù)據(jù)庫原理與程序設(shè)計的知識,能夠針對一個小型的數(shù)據(jù)庫管理系統(tǒng)進(jìn)行系統(tǒng)的需求分析,系統(tǒng)設(shè)計,數(shù)據(jù)庫設(shè)計,編碼,測試等,完成題目要求的功能,加深對數(shù)據(jù)庫系統(tǒng)、軟件工程、程序設(shè)計語言的理論知識的理解和應(yīng)用水平,通過設(shè)計實際的數(shù)據(jù)庫系統(tǒng)應(yīng)用課題,進(jìn)一步熟悉數(shù)據(jù)庫管理系統(tǒng)的操作技術(shù),提高動手能力,提高分析問題和解決問題的能力。從而達(dá)到掌握開發(fā)一個小型數(shù)據(jù)庫的目的。1.2定義1、系統(tǒng)名稱:汽車銷售管理系統(tǒng)2、數(shù)據(jù)庫管理軟件:microsoft sql server3、數(shù)據(jù)庫設(shè)計人員:洪保江4、使用本數(shù)據(jù)庫的程序:。5

3、、數(shù)據(jù)庫設(shè)計采用軟件:microsoft office visio 20036、系統(tǒng)采用c/s體系結(jié)構(gòu):client (客戶端)負(fù)責(zé)提供表達(dá)邏輯、顯示用戶界面信息、訪問數(shù)據(jù)庫服務(wù)器;server (服務(wù)器)端用于提供數(shù)據(jù)服務(wù)。7、運行平臺:windows 2000/xp/linux1.3、數(shù)據(jù)庫設(shè)計步驟2、需求分析2.1功能分析進(jìn)行需求分析首先是調(diào)查清楚用戶的實際要求,與用戶達(dá)成共識,然后分析與表達(dá)這些需求。調(diào)查廠商與各部門需求的具體步驟如下: (1).調(diào)查廠商組織情況。包括了解各組織的部門組成情況,各部門的職責(zé)等,為分析信息流程做準(zhǔn)備。 (2).調(diào)查各部門的業(yè)務(wù)活動情況。包括了解各個部門和使

4、用什么數(shù)據(jù),如何加工處理這些數(shù)據(jù),輸出什么信息,輸出到什么部門,輸出結(jié)果的格式是什么,這些是調(diào)查的重點。 (3).在熟悉了業(yè)務(wù)活動的基礎(chǔ)上,協(xié)助用戶明確對新系統(tǒng)的各種要求,包括信息要求,處理要求,安全性與完整性要求,這是調(diào)查的又一重點。 (4).確定新系統(tǒng)的邊界。對前面調(diào)查的結(jié)果進(jìn)行初步分析,確定哪些功能由計算機(jī)完成或?qū)頊?zhǔn)備讓計算機(jī)完成,哪些活動由人工完成。調(diào)查本地從事汽車銷售的企業(yè),根據(jù)企業(yè)汽車銷售的情況,設(shè)計用于汽車銷售的管理系統(tǒng),主要功能有:基礎(chǔ)信息管理:廠商信息、車型信息和客戶信息;進(jìn)貨管理:車輛采購、車輛入庫;銷售管理:車輛銷售(處理車輛銷售單)、銷售代辦(處理銷售代辦單)、車輛查

5、詢、銷售日記錄、銷售月記錄;倉庫管理:庫存車輛、倉庫明細(xì)、進(jìn)銷存統(tǒng)計;系統(tǒng)維護(hù):如數(shù)據(jù)安全管理(含備份與恢復(fù))、操作員管理、權(quán)限設(shè)置等;2.2業(yè)務(wù)活動一、市場工作 1、 獲取訂單(有能力可做) a、聯(lián)絡(luò)經(jīng)銷商倉管員,了解經(jīng)銷商庫存; b、聯(lián)絡(luò)經(jīng)銷商采購購報價; c、結(jié)合經(jīng)銷商庫存情況,主動爭取訂單; d、尋找經(jīng)銷商的配貨意向進(jìn)行展異議處理; e、獲得訂單,并交由分公司助理安排送貨; f、跟蹤送貨員貸物交接情況及協(xié)助送貸員解決收款中遇到的困難。 二、 客戶拜訪及市場工作 第一步 準(zhǔn)備工作: a、檢查每周工作記事表,確定當(dāng)日拜記路線; b、 準(zhǔn)備當(dāng)日需解決的問題,預(yù)約當(dāng)日需拜訪客戶; 第二步 銷售

6、拜訪 a、接觸:問候或自我介紹通過改變交談環(huán)境、車輪話術(shù)等方法,確定良好的溝通氛圍;b、收集市場資訊及客戶銷售資料及填報表;c、了解競爭對手及品牌機(jī)型的市場動向;d、進(jìn)行異議處理、協(xié)助客戶在銷售中存在的問題。 第三步 總結(jié)與調(diào)整 a、 回顧當(dāng)日工作進(jìn)展?fàn)顩r,填寫每日工作日記; b、 總結(jié)當(dāng)時工作中遇到的問題,失誤與成就,并及時做出調(diào)整; c、 根據(jù)當(dāng)時進(jìn)展?fàn)顩r,對每周工作記事表做出調(diào)整。2.3數(shù)據(jù)字典1、數(shù)據(jù)項編號數(shù)據(jù)項名稱說 明 部 分編號數(shù)據(jù)項名 稱說 明 部 分1客戶姓名文本類型 長度為20字符2工作單位文本類型 長度為20字符3性別字符串類型 男、女4年齡 整數(shù)類型 181005客戶號

7、字符串類型 有唯一性6聯(lián)系電話整數(shù)類型 7車型號字符串類型 有唯一性8價格浮點型9車輛狀態(tài)枚舉類型 被訂、未訂10廠商名文本類型 有唯一性11廠商號字符串類型 有唯一性12地址文本類型 長度為30字符13生產(chǎn)車輛總數(shù)整數(shù)類型14廠商狀態(tài)枚舉類型 忙、閑15訂單號整數(shù)類型 訂單所屬的類別16訂貨日期時間類型 */*17交貨日期時間類型 */*18倉庫號字符串類型 有唯一性19進(jìn)貨車輛數(shù)整數(shù)類型 20出貨車輛數(shù)整數(shù)類型21庫存車輛總數(shù)整數(shù)類型22出售車輛數(shù)整數(shù)類型23車輛總成本整數(shù)類型 24獲取總金額整數(shù)類型25利潤整數(shù)類型 26買車時間時間類型27保修期限時間類型28備注文本類型19車輛名稱字符

8、串類型 長度為20字符2、數(shù)據(jù)結(jié)構(gòu)編號數(shù)據(jù)結(jié)構(gòu)名屬 性1客戶客戶姓名、性別、年齡、客戶號、工作單位、聯(lián)系電話2車輛車型號、車輛名稱、廠商名、價格、車輛狀態(tài)3廠商廠商名、廠商號、地址、生產(chǎn)車輛總數(shù)、廠商狀態(tài)、備注4訂單訂單號、客戶號、訂貨日期、交貨日期、地址、是否存有、是否已訂5倉庫倉庫號、地址、進(jìn)貨車輛數(shù)、出貨車輛數(shù)、庫存車輛總數(shù)、6車輛銷售車型號、廠商號、出售車輛數(shù)、車輛總成本、獲取總金額、利潤7訂貨客戶、廠商、車輛、買車時間、保修期限3、數(shù)據(jù)流編號數(shù) 據(jù) 流 名輸 入輸 出1變更客戶變更信息客戶信息2查詢客戶客戶號客戶信息3變更廠商變更信息廠商信息4查詢廠商廠商號廠商信息5變更車輛變更信息

9、車輛信息6查詢車輛車型號車輛信息7變更訂單變更信息訂單信息8查詢訂單訂單號訂單信息9變更倉庫變更信息倉庫信息10倉庫倉庫號地址11變更車輛銷售變更信息車輛銷售信息12查詢車輛銷售車輛銷售數(shù)利潤13查詢空閑廠商廠商狀態(tài)限制條件空閑廠商信息14結(jié)賬車型號購買信息15提交訂貨請求客戶號、車型號、價格、廠商號車輛信息16獲得訂貨請求訂貨信息車型號、廠商號、客戶號17提交訂單信息車型號、廠商號訂單信息18變更廠商分工信息廠商號、車型號廠商分工信息19預(yù)定車輛車型號車輛信息20付款車型號車輛信息、廠商信息4、數(shù)據(jù)存儲數(shù)據(jù)存儲名輸入數(shù)據(jù)流輸出數(shù)據(jù)流說 明 部 分客戶信息變更客戶查詢客戶提交訂貨請求車輛信息變

10、更車輛查詢車輛獲得訂貨請求廠商信息變更廠商查詢房間提交訂貨請求查詢空閑廠商車輛銷售信息變更車輛銷售查詢廠商提交點貨請求查詢空閑廠商提交訂貨信息提交訂單信息訂單信息變更訂單結(jié)賬提交訂貨請求訂貨信息提交訂貨請求提交訂單信息結(jié)賬獲得訂貨請求廠商分工信息變更廠商分工信息5、處理過程處理過程名輸入數(shù)據(jù)流輸出數(shù)據(jù)流說 明 部 分客戶登記終端變更車輛變更廠商訂貨終端提交訂貨請求獲得訂貨請求訂貨獲得訂貨請求提交訂貨信息訂單提交訂貨信息提交訂單信息客戶結(jié)賬結(jié)賬2.4數(shù)據(jù)流圖1、頂層進(jìn)程銷售管理子系統(tǒng)第一層數(shù)據(jù)流圖2、第二層 (1)進(jìn)程1接受訂單 (2) 進(jìn)程2處理訂單(3) 進(jìn)程3開發(fā)票(4) 進(jìn)程4結(jié)帳系統(tǒng)3

11、、結(jié)構(gòu)設(shè)計3.1概念結(jié)構(gòu)設(shè)計在概念設(shè)計中,通常用四種方法: (1). 自頂向下,首先定義全局概念結(jié)構(gòu)的框架,然后逐步細(xì)化. (2). 自底向上,首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后將他們集成起來,得到全局概念結(jié)構(gòu). (3). 逐步擴(kuò)張. 首先定義最核心的概念結(jié)構(gòu),然后向外擴(kuò)充,直至總體概念結(jié)構(gòu). (4). 混合策略. 即自頂向下和自底向上相結(jié)合,用自頂向下策略設(shè)計一個全局概念結(jié)構(gòu)的框架,以它為骨架集成由自底向上策略中設(shè)計的各局部概念結(jié)構(gòu). 我在此設(shè)計中采用自底向上的方法,逐步實現(xiàn)數(shù)據(jù)庫的設(shè)計,得到全局概念.3.2、總體e-r圖設(shè)計3.3邏輯結(jié)構(gòu)設(shè)計331基本表1、客戶基本表屬性中文名稱屬性名類型

12、長度說明客戶號c_nochar20主碼:公司統(tǒng)一編號,具有唯一性客戶姓名user_namechar20客戶名稱服務(wù)員性別user_sexchar4客戶性別服務(wù)員年齡user_ageint18100聯(lián)系電話user_telint工作單位unitchar20客戶所在工作場所2、車輛基本表屬性中文名稱屬性名類型長度說明車型號car_nochar10主碼:廠商統(tǒng)一編號,具有唯一性車輛名稱car_namechar20車輛名稱廠商名industty_namechar文本類型 有唯一性價格pricefloat車輛狀態(tài)statusboolean枚舉類型 被訂、未訂3、廠商基本表屬性中文名稱屬性名類型長度說明廠

13、商號industty_nochar10主碼:廠商統(tǒng)一編號,具有唯一性廠商名industty_namechar文本類型 有唯一性地址addresschar10廠商狀態(tài)statusboolean忙:1;空閑:0生產(chǎn)車輛總數(shù)car_amountint4、倉庫表屬性中文名稱屬性名類型長度說明倉庫號box_nochar10主碼:廠商統(tǒng)一編號,具有唯一性地址addresschar10進(jìn)貨車輛數(shù)in_amountint倉庫開始進(jìn)車輛的數(shù)量出貨車輛數(shù)ou_amountint倉庫已賣出的車輛數(shù)量庫存車輛總數(shù)remain_amountint倉庫現(xiàn)存有的車輛數(shù)量5、車輛銷售基本表屬性中文名稱屬性名類型長度說明車型號

14、car_nochar10外碼:參照車輛表的車型號廠商號industty_nochar10外碼:依照廠商表的廠商號出售車輛數(shù)sale_amountint車輛總成本car_moneyfloat車輛進(jìn)貨的成本獲取總金額moneyfloat利潤beniftfloat盈:1 虧:06、訂單表屬性中文名稱屬性名類型長度說明訂單號order_noint10訂單所屬的類別客戶號c_nochar20外碼:參照客戶表的客戶號訂貨日期order_datadata訂貨時間交貨日期hand_datadata交貨期限廠商號industty_nochar10外碼:依據(jù)廠商表中的廠商號是否存有madeboolean默認(rèn):fa

15、lse(沒有)是否已訂ordersboolean默認(rèn):false (未訂)332視圖1、空閑廠商(廠商號,廠商名)從廠商基本表導(dǎo)出2、進(jìn)銷存統(tǒng)計(倉庫號,進(jìn)貨車輛數(shù),出貨車輛數(shù))從倉庫基本表導(dǎo)出3、所有車輛銷售信息(車型號,廠商號,車輛狀態(tài))從車輛和廠商基本表導(dǎo)出4、付款(車型號,廠商號,車輛名,價格)從車輛表、廠商表導(dǎo)出5、訂單生成視圖訂單(訂單號,客戶號,訂貨日期,交貨日期,地址,是否存有,是否已訂)從訂單表、客戶表導(dǎo)出6、收益統(tǒng)計信息(車型號,出售車輛數(shù),車輛總成本,獲取總金額,利潤)從車輛表、車輛銷售表導(dǎo)出3.4物理結(jié)構(gòu)設(shè)計在物理結(jié)構(gòu)設(shè)計階段首先分兩步走:(1)確定數(shù)據(jù)庫的物理結(jié)構(gòu),在

16、關(guān)系數(shù)據(jù)庫中主要是指存取方法和存儲結(jié)構(gòu)。(2)對物理結(jié)構(gòu)的評價是時間和空間效率。選取正確的關(guān)系模式存取方法,常用的有:(1)存取索引方法。(2)聚簇存取。(3)hash存取方法等。4 運用設(shè)計4.1、程序源碼與用戶界面#include#include#include#include#include#include#define car-no-len 50#define use-age-sex 5#define car-name-len 50#define depart-len 100#define car-price-len 30#define status_len 100int main()

17、 /* step 1 定義句柄和變量 */ /以king開頭的表示的是連接kingbasees的變量 /以server開頭的表示的是連接sqlserver的變量 sqlhenv kinghenv,serverhenv; /環(huán)境句柄 sqlhdbc kinghdbc,serverhdbc; /連接句柄 sqlhstmt kinghstmt,serverhstmt; /語句句柄 sqlreturn ret; sqlchar cnamename-len,departdepart-len,cnono-len,cpriceprice-len,statusstatus-len; sqlinteger ss

18、ta,ssage; sqlinteger cbage=0,cbsta=0,cbcno=sql-nts,cbprice=sql-nts,cbname=sql-nts,cbdeopart=sql-nts; /*step 2 初始化環(huán)境 */ret=sqlallochandle(sql-handle-env,sql-null-handle,&kinghenv);ret=sqlallochandle(sql-handle-env,sql-null-handle,&serverhenv);ret=sqlsetenvattr(kinghenv,sql-attr-odbc-version,(void*)sq

19、l-ov-odbc3,0);ret=sqlsetenvattr(serverhenv,sql-attr-odbc-version,(void*)sql-ov-odbc3,0); /*step 3:建立連接 */ret=sqlallochandle(sql-handle-dbc,kinghenv,&kinghdbc);ret=sqlalloochandle(sql-handle-dbc,serverhenv,&serverhdbc);ret=sqlconnect(kinghdbc,kingbasees odbc,sql-nts,system,sql-nts,manager,sql-nts);if

20、(! sql-succeeded(ret) return -1; /連接失敗時返回錯誤值ret=sqlconnect(serverhdbc,sqlserver,sql-nts,sa,sql-nts,sa,sql-nts);if(! sql-succeeded(ret) return -1; /連接失敗時返回錯誤值 /* step 4: 初始化語句句柄 */ret=sqlallochandle(sql-handle-stmt,kinghdbc,&kingstmt);ret=sqlsetstmtattr(kingstmt,sql-attr-row-bind-byte, (sqlpointer)sq

21、l-bind-by-column,sql-is-integer);ret=sqlallochandle(sql-handle-stmt,serverhdbc,&serverhstmt);/* step 5:兩種方式執(zhí)行語句 */* 預(yù)編譯帶有參數(shù)的語句 */ret=sqlprepare(serverhstmt,insert into student (car_no,car_name ,department_name,price,status )values (?,?,?,?),sql_nts);if (ret=sql_success ret=sql_success_with_info)ret=

22、sqlbindparameter(serverhstmt,1,sql_param_input,sql_c_char, sql-char,car_no_len,0,car_no,0,&cbcar_no);ret=sqlbindparameter(serverhstmt,2,sql_param_input,sql_c_char, sql-char,car_name_len,0,car_name,0,&cbcar_name);ret=sqlbindparameter(serverhstmt,3,sql_param_input,sql_c_char, sql-char,2,0,department_n

23、ame,0,&cbdepartment_name);ret=sqlbindparameter(serverhstmt,4,sql_param_input,sql_c_float, sql-float,0,0,price,0,&cbprice);ret=sqlbindparameter(serverhstmt,5,sql_param_input,sql_c_boolean, sql-boolean,0,status,0,&cbstatus); /*查詢車輛信息的執(zhí)行sql語句*/ret=sqlexecdirect(kinghstmt,select * from 車輛,sql_nts);if (r

24、et=sql_success ret=sql_success_with_info)ret=sqlbindcol(kingghstmt,1,sql_c_char,car_no,car_no_len,&cbcar_no);ret=sqlbindcol(kingghstmt,2,sql_c_char,car_name,car_name_len,cbcar_name);ret=sqlbindcol(kingghstmt,3,sql_c_char,department_name,&cbdepartment_name);ret=sqlbindcol(kingghstmt,4,sql_c_float,pri

25、ce,0,&cbprice);ret=sqlbindcol(kingghstmt,5,sql_c_char,status,status_len,&cbstatus); /* step 6:兩種方式的語句 */*預(yù)編譯客戶基本表帶有參數(shù)的語句 */ret=sqlprepare(serverhstmt,insert into student (c_no,user_name,user_sex,user_age,user_tel,unit)values (?,?,?,?),sql_nts);if (ret=sql_success ret=sql_success_with_info)ret=sqlbin

26、dparameter(serverhstmt,1,sql_param_input,sql_c_char, sql-char,c_no_len,0,c_no,0,&cbc_no);ret=sqlbindparameter(serverhstmt,2,sql_param_input,sql_c_char, sql-char,user_name_len,0,user_name,0,&cbuser_name);ret=sqlbindparameter(serverhstmt,3,sql_param_input,sql_c_char, sql-char,2,0,user_sex,0,&cbuser_se

27、x);ret=sqlbindparameter(serverhstmt,4,sql_param_input,sql_c_int, sql-int,0,0,user_age,0,&cbuser_age);ret=sqlbindparameter(serverhstmt,5,sql_param_input,sql_c_int, sql-int,user_tel_len,0,user_tel,0,&cbuser_tel);ret=sqlbindparameter(serverhstmt,6,sql_param_input,sql_c_char, sql-char,unit_len,0,unit,0,

28、&cbunit); /*查詢客戶信息執(zhí)行sql語句*/ret=sqlexecdirect(kinghstmt,select * from 客戶,sql_nts);if (ret=sql_success ret=sql_success_with_info)ret=sqlbindcol(kingghstmt,1,sql_c_char,sc_no,c_no_len,&cbc_no);ret=sqlbindcol(kingghstmt,2,sql_c_char,user_name,user_name_len,cbuser_name);ret=sqlbindcol(kingghstmt,3,sql_c_char,suser_sex,&cbuser_sex);ret=sqlbindcol(kingghstmt,4,sql_c_int,suser_age,user_age_len,&cbuser_age);ret=sqlbindcol(kingghstmt,5,sql_c_int,suser_tel,user_tel,&cbuser_tel);ret=sqlbindcol(kingghstmt,6,sql_c_char,sunit,user_tel,&cbunit); /* step 7:處理結(jié)果集并執(zhí)行預(yù)編譯后的語句

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論