版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 2010/2011學(xué)年 第一學(xué)期</p><p> 課程名稱: 數(shù)據(jù)庫(kù)設(shè)計(jì) </p><p> 專業(yè)班級(jí): 計(jì)算機(jī)0801 </p>
2、<p> 姓 名: </p><p> 學(xué) 號(hào): </p><p> 指導(dǎo)教師: </p><p><b> 4S店管理
3、系統(tǒng)</b></p><p><b> 1引言</b></p><p> 設(shè)計(jì)并開發(fā)4s店銷售與售后服務(wù)系統(tǒng)軟件,實(shí)現(xiàn)汽車銷售,零件銷售,售后服務(wù),庫(kù)存管理等功能</p><p><b> 2 總體設(shè)計(jì)</b></p><p><b> 2.1系統(tǒng)運(yùn)行環(huán)境</b&
4、gt;</p><p> 1)操作系統(tǒng):windows xp</p><p> 2)數(shù)據(jù)庫(kù):SQL Sever2000</p><p> 3)前端開發(fā)軟件:Power Builder9.0</p><p><b> 2.2軟件功能描述</b></p><p> 系統(tǒng)功能可概括分為5個(gè)模塊
5、,12個(gè)小模塊,即:整車銷售模塊,零配件模塊,售后服務(wù)模塊,系統(tǒng)管理模塊,基本信息模塊;整車銷售管理模塊,整車進(jìn)貨管理模塊,整車庫(kù)存管理模塊,零配件銷售管理模塊,零配件進(jìn)貨管理模塊,零配件庫(kù)存管理模塊,維修管理模塊,整車信息,零配件信息,供應(yīng)商信息,客戶信息,用戶管理模塊。系統(tǒng)功能模塊,如圖2所示:</p><p><b> 整車銷售</b></p><p> 整
6、車銷售管理:記錄整車的銷售信息,實(shí)現(xiàn)增,刪,改,查等功能</p><p> 整車進(jìn)貨管理模塊:記錄整車進(jìn)貨的管理信息,實(shí)現(xiàn)對(duì)進(jìn)貨單的增刪改查等功能</p><p> 整車庫(kù)存管理:記錄整車的庫(kù)存管理信息</p><p><b> 零配件</b></p><p> 零配件銷售管理:記錄零配件的銷售信息,實(shí)現(xiàn)增,刪,
7、改,查等功能</p><p> 零配件進(jìn)貨管理:記錄零配件進(jìn)貨的管理信息,實(shí)現(xiàn)對(duì)進(jìn)貨單的增刪改查等功能</p><p> 零配件庫(kù)存管理:記錄零配件的庫(kù)存管理信息</p><p><b> 售后服務(wù)</b></p><p> 1)維修管理:對(duì)已售車輛的維修數(shù)據(jù)進(jìn)行管理</p><p>&l
8、t;b> 基本信息</b></p><p> 整車信息:存儲(chǔ)整車的信息</p><p> 零配件信息:存儲(chǔ)零配件的信息</p><p> 客戶信息:存儲(chǔ)客戶的信息</p><p> 供應(yīng)商信息:存儲(chǔ)供應(yīng)商的信息</p><p><b> 系統(tǒng)管理</b></p&
9、gt;<p> 用戶管理:對(duì)用戶信息進(jìn)行管理</p><p><b> 4數(shù)據(jù)庫(kù)結(jié)構(gòu)</b></p><p> 4.1.數(shù)據(jù)字典(見圖3)</p><p> 表2.1 數(shù)據(jù)庫(kù)表清單</p><p> 表格設(shè)計(jì)在系統(tǒng)設(shè)計(jì)報(bào)告出此處不再列出。</p><p><b>
10、 5詳細(xì)設(shè)計(jì)</b></p><p><b> 5.1用戶登錄窗口</b></p><p> 5.1.1界面與功能描述</p><p> 用戶登錄窗口的運(yùn)行界面如圖4所示</p><p><b> 圖4 用戶登錄窗口</b></p><p> 該模塊主
11、要用來(lái)驗(yàn)證用戶是否合法,以及合法用戶對(duì)自己密碼的修改。用戶輸入用戶號(hào)和密碼后,點(diǎn)擊“確定”按鈕,如果數(shù)據(jù)庫(kù)中有相應(yīng)數(shù)據(jù),則說明為合法用戶,就可以進(jìn)入到下一個(gè)頁(yè)面。</p><p> 5.1.2 關(guān)鍵代碼分析</p><p> 1.[確定]按鈕的clicked事件</p><p> 這里用到了動(dòng)態(tài)SQL語(yǔ)句,用于檢查輸入數(shù)據(jù)與表數(shù)據(jù)的比較查詢,以此實(shí)現(xiàn)</
12、p><p><b> 用戶是否存在</b></p><p> 用戶輸入密碼是否正確</p><p> 存在的用戶名,若密碼輸入3次不正確著退出系統(tǒng)</p><p><b> 具體代碼如下:</b></p><p> string password,userpasswor
13、d</p><p> string ls_yhbm,ls_userid,ls_password</p><p> ls_userid=sle_userid.text</p><p> ls_password=sle_password.text</p><p> g_userid=sle_userid.text
14、 //g_userid為全局變量</p><p> g_userpassword=sle_password.text //g_userpassword為全局變量</p><p> if sle_userid.text="" then</p><p> messagebox("信息",&quo
15、t;請(qǐng)輸入帳號(hào)密碼")</p><p><b> return</b></p><p><b> end if</b></p><p> if ls_userid="5" then</p><p> messagebox("信息","
16、;測(cè)試頁(yè)面")</p><p> open(w_zmain)</p><p><b> return</b></p><p><b> end if</b></p><p> string ls_yhmc //游標(biāo)的使用從此開始</p&
17、gt;<p> long ls_js=0</p><p> declare yhxxcursor cursor for</p><p> select yhxx_yhm from yhxx; </p><p> open yhxxcursor; </p><p> if sqlca.sqlcode=-1
18、 then</p><p> messagebox("sql錯(cuò)誤",string(sqlca.sqldbcode)+":"+sqlca.sqlerrtext)</p><p><b> else</b></p><p> ls_yhmc=""</p><p&
19、gt;<b> do</b></p><p> fetch yhxxcursor into:ls_yhmc;</p><p> if trim(ls_yhmc)=ls_userid then</p><p><b> ls_js=1</b></p><p><b> exit&l
20、t;/b></p><p><b> end if</b></p><p> loop while sqlca.sqlcode=0</p><p> if sqlca.sqlcode=-1 then</p><p> messagebox("sql錯(cuò)誤",string(sqlca.s
21、qldbcode)+":"+sqlca.sqlerrtext)</p><p><b> end if</b></p><p><b> end if</b></p><p> close yhxxcursor; //游標(biāo)語(yǔ)句結(jié)束處</p>&
22、lt;p> if ls_js=0 then</p><p> messagebox("信息","用戶不存在")</p><p> sle_userid.text=""</p><p> sle_userid.setfocus()</p><p><b> r
23、eturn</b></p><p><b> end if</b></p><p> select yhxx_yhmm into :userpassword from yhxx </p><p> where yhxx_yhm=:ls_userid;</p><p> if
24、 ls_password=trim(userpassword) then</p><p> select yhxx_yhbm into :ls_yhbm from yhxx where yhxx_yhm=:ls_userid;</p><p> if trim(ls_yhbm)="采購(gòu)部" then</p><p> messa
25、gebox("信息","歡迎進(jìn)入采購(gòu)管理系統(tǒng)")</p><p> open(w_cgmain)</p><p> close(w_login)</p><p><b> return</b></p><p> elseif trim(ls_yhbm)="銷售部&
26、quot; then</p><p> messagebox("信息","歡迎進(jìn)入銷售管理系統(tǒng)")</p><p> open(w_xsmain)</p><p> close(w_login)</p><p><b> return</b></p><
27、;p> elseif trim(ls_yhbm)="高層" then </p><p> messagebox("信息","歡迎進(jìn)入4S店管理系統(tǒng)")</p><p> open(w_main)</p><p> close(w_login)</p><p><b
28、> return</b></p><p> elseif trim(ls_yhbm)="維修部" then </p><p> messagebox("信息","歡迎進(jìn)入維修管理系統(tǒng)")</p><p> open(w_wxmain)</p><p> c
29、lose(w_login)</p><p><b> return</b></p><p><b> end if</b></p><p><b> else</b></p><p> g_cs=g_cs + 1</p><p> messa
30、gebox("錯(cuò)誤信息","密碼或用戶名錯(cuò)誤,請(qǐng)重新輸入")</p><p> if g_cs=3 then</p><p> messagebox("錯(cuò)誤信息","連續(xù)三次密碼輸入錯(cuò)誤,退出程序")</p><p> close(parent)</p><p&
31、gt;<b> return</b></p><p><b> end if</b></p><p><b> end if</b></p><p> sle_password.text=""</p><p> sle_password.setfo
32、cus()</p><p> 用游標(biāo)是為了實(shí)現(xiàn)用戶名是否存在;三次輸入不多則退出是設(shè)了一個(gè)全局變量,由此得以實(shí)現(xiàn);部門判斷則是檢索表中信息匹配著打開相應(yīng)窗口</p><p><b> 5.2車輛銷售窗口</b></p><p> 5.2.1界面與功能描述</p><p> 用戶管理窗口的運(yùn)行界面如圖5所示<
33、/p><p><b> 圖5 用戶管理窗口</b></p><p> 操作用戶信息,并可實(shí)現(xiàn)指定列的模糊以及精確查詢。</p><p> 5.2.2關(guān)鍵代碼分析</p><p> (1)[查詢]按鈕的clicked事件</p><p> dw_1.setfilter(""
34、)</p><p> if rb_1.checked=true then</p><p> //精確查詢模式程序</p><p> choose case ddplb_1.text </p><p> case "用戶名"</p><p> dw_1.setfilter("用戶
35、名='"+sle_1.text+"'")</p><p><b> case "部門"</b></p><p> dw_1.setfilter("部門='"+sle_1.text+"'")</p><p><b&g
36、t; case "角色"</b></p><p> dw_1.setfilter("角色='"+sle_1.text+"'")</p><p> end choose</p><p><b> else</b></p><p&g
37、t; //模糊查詢模式程序</p><p> choose case ddplb_1.text</p><p> case "用戶名"</p><p> dw_1.setfilter("用戶名 like"+"'%"+sle_1.text+"%'")</p&g
38、t;<p><b> case "部門"</b></p><p> dw_1.setfilter("部門 like"+"'%"+sle_1.text+"%'")</p><p><b> case "角色"</b>
39、;</p><p> dw_1.setfilter("角色 like"+"'%"+sle_1.text+"%'")</p><p> end choose</p><p> end if dw_1.retrieve() //檢索數(shù)據(jù),將符合條件的數(shù)據(jù)顯示在數(shù)據(jù)窗口中</
40、p><p> 使用到兩個(gè)函數(shù):Setfilter(),retrieve()函數(shù)。Setfilter函數(shù)中語(yǔ)句格式符合動(dòng)態(tài)SQL語(yǔ)句查詢格式,其用于對(duì)涉及的表中的數(shù)據(jù)進(jìn)行篩選,然后用retrieve函數(shù)返回篩選后的結(jié)果</p><p> 5.3 庫(kù)存管理窗口</p><p> 5.3.1界面與功能描述</p><p> 庫(kù)存管理窗口的運(yùn)行界
41、面如圖6所示</p><p> 圖6 (整車)庫(kù)存管理窗口</p><p> 庫(kù)存分為配件庫(kù)存與整車庫(kù)存。他們結(jié)構(gòu)與功能實(shí)現(xiàn)相同。在此演示整車庫(kù)存。</p><p> 此用于整車的庫(kù)存管理,可查看商品庫(kù)存數(shù)量并且添加庫(kù)存提示。</p><p> 5.3.2 具體代碼分析</p><p> 數(shù)據(jù)窗口中庫(kù)存提示的
42、動(dòng)態(tài)顯示:</p><p> 在數(shù)據(jù)窗口中建立了一個(gè)文本框,然后點(diǎn)擊屬性里text欄旁邊的一個(gè)按鈕,然后在其中添加if函數(shù),進(jìn)行對(duì)其文本內(nèi)容的動(dòng)態(tài)修改</p><p> 5.4 進(jìn)貨(銷售)盤點(diǎn)窗口</p><p> 5.4.1界面與功能描述</p><p> 整車進(jìn)貨(銷售)盤點(diǎn)窗口的運(yùn)行界面如圖7,8所示</p>&
43、lt;p> 圖7 整車進(jìn)貨盤點(diǎn)窗口</p><p> 圖8 整車銷售盤點(diǎn)窗口</p><p> 整車與配件的進(jìn)貨與銷售盤點(diǎn)結(jié)構(gòu)與功能構(gòu)成都基本相似(整車或配件的進(jìn)貨盤點(diǎn)中是看進(jìn)貨單數(shù)據(jù)入庫(kù)沒,整車或配件的銷售盤點(diǎn)中是看銷售單數(shù)據(jù)提貨沒。入庫(kù)與提貨都會(huì)對(duì)庫(kù)存的商品的數(shù)量產(chǎn)生影響)。在此展示整車進(jìn)貨盤點(diǎn)。在進(jìn)貨(銷售)盤點(diǎn)中,可以查看進(jìn)貨單(銷售單)中商品是否入庫(kù)(提貨)。<
44、/p><p> 5.4.2 具體代碼分析</p><p> 1.[入庫(kù)]按鈕的clicked事件</p><p> g_row=dw_1.getrow () //g_row為全局變量</p><p> if g_row=0 then</p><p> messagebox("提示",
45、"沒有數(shù)據(jù)")</p><p><b> return</b></p><p><b> end if </b></p><p> jh_sl_jh=dw_1.getitemnumber (g_row,8)</p><p> jh_zcmc=dw_1.getitemst
46、ring (g_row,3)</p><p> jh_rkf=dw_1.getitemstring(g_row,1) </p><p> if trim(jh_rkf)="否" then</p><p> SELECT zckc_kcsl INTO :jh_sl FROM kcgl_zckc</p>
47、<p> where zckc_zcmc=:jh_zcmc; </p><p> jh_sl=jh_sl - jh_sl_jh </p><p> UPDATE kcgl_zckc </p><p> SET zckc_kcsl = :jh_sl </p><p> where zckc_zcmc=:jh_zc
48、mc;</p><p> messageBox("提示信息","入庫(kù)已操作成功"+string(jh_sl)+","+string(jh_sl_jh)) </p><p> jh_rkf="是" </p><p> UPDATE jhgl_zcjhd SET rk
49、f=:jh_rkf where zcjhd_zcmc=:jh_zcmc;</p><p><b> else</b></p><p> messageBox("提示信息","已入庫(kù)") </p><p><b> end if</b></p><p
50、> dw_1.settransobject( sqlca )</p><p> dw_1.retrieve()</p><p> 涉及的數(shù)據(jù)窗口是整車進(jìn)貨單表。 </p><p> 利用數(shù)據(jù)窗口函數(shù)getrow獲得所點(diǎn)擊的條狀數(shù)據(jù)行的行號(hào)。再由函數(shù)getitemstring或者getitemstring獲取選中行第幾列的數(shù)據(jù)。本代碼中先判斷所選數(shù)據(jù)條
51、是否入庫(kù)。判斷后,若為“否”著獲取其中數(shù)量再獲得庫(kù)存數(shù)量,在算數(shù)操作后將修改的數(shù)據(jù)傳回?cái)?shù)據(jù)庫(kù);若為“是”,則產(chǎn)生提示“已入庫(kù)”。</p><p> 6出現(xiàn)的問題及解決方法</p><p> 多數(shù)表中如供應(yīng)商信息,整車信息,配件信息,銷售單信息中編號(hào),自動(dòng)生成不同編號(hào)(主鍵)</p><p> 這類表中的主鍵信息因?yàn)橐獫M足唯一的要求,所以通常應(yīng)該程序自動(dòng)生成主鍵
52、信息(如編號(hào))。這樣就可以防止數(shù)據(jù)無(wú)法錄入,錄入錯(cuò)誤導(dǎo)致數(shù)據(jù)混亂的錯(cuò)誤。同時(shí)這類主鍵信息為通常為CHAR類型,主鍵最好是字母與數(shù)字的結(jié)合。這樣便于識(shí)別,區(qū)分與查詢。</p><p> 利用的解決技術(shù)是PB自帶的字符處理函數(shù),實(shí)現(xiàn)中可以人為設(shè)定主鍵字符部分,然后對(duì)主鍵數(shù)值部分進(jìn)行操作,以生成各不相同的主鍵(例如:編號(hào))。</p><p> 在此以配件信息錄入窗口為例,實(shí)現(xiàn)此功能。在窗口的
53、open事件中,假如如下代碼片段:</p><p> string ls_zdbh1,ls_zdbh,ls_zdbh2</p><p> select pjxx_bh into :ls_zdbh1 from jbxx_pjxx;//此語(yǔ)句用于檢查表是否為空</p><p> if ls_zdbh1="" then</p>
54、;<p> ls_zdbh="pjxx1"</p><p> st_pjbh.text=ls_zdbh</p><p><b> return</b></p><p><b> end if</b></p><p> select max (jbxx_pj
55、xx.pjxx_bh) into :ls_zdbh2 from jbxx_pjxx; </p><p> //檢索表中主鍵列做大項(xiàng),完成不同主鍵的生成</p><p> ls_zdbh=mid(trim(ls_zdbh2),5) //用于取主鍵數(shù)值部分</p><p> ls_zdbh=string(long(ls_zdbh)+1)
56、</p><p> ls_zdbh="pjxx"+trim(ls_zdbh)</p><p> st_pjbh.text=ls_zdbh //在指定控件中顯示</p><p> 用到的主要函數(shù)是mid函數(shù),用于區(qū)主鍵信息的數(shù)值部分。取得數(shù)值部分后對(duì)數(shù)值部分采取加一操作,生成唯一的主鍵。</p>
57、<p><b> 7參考資料</b></p><p> [1] 王珊.?dāng)?shù)據(jù)庫(kù)系統(tǒng)概論(第四版).北京:高等教育出版社,2006.</p><p> [2] 陳永強(qiáng).PowerBuilder數(shù)據(jù)庫(kù)開發(fā)經(jīng)典實(shí)例精解.北京:機(jī)械工業(yè)出版社,2007.</p><p><b> 8總結(jié)</b></p>
58、<p> 此次實(shí)驗(yàn)反映了很多問題,放映出了當(dāng)前作為計(jì)算機(jī)系學(xué)生我的狀態(tài)。</p><p> 不足的地方:工具使用不熟悉,問題出現(xiàn)時(shí)不能有效縮小問題范圍,問題解決效率不高;由于需求分析,結(jié)構(gòu)設(shè)計(jì)方面沒有做到充分和深入,以至系統(tǒng)功能缺失;小組成員之間的交流不夠,任務(wù)分配沒有細(xì)化,成員之間思想沒有得到很好的融合。</p><p> 值得肯定的地方:基本完成了最初構(gòu)想的系統(tǒng),付
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 4s店銷售管理系統(tǒng)設(shè)計(jì)開題報(bào)告
- 管理學(xué)課程設(shè)計(jì)—4s店管理制度
- 4s店銷售管理系統(tǒng)開題報(bào)告
- 汽車4s店crm管理系統(tǒng)
- 4s店實(shí)踐報(bào)告
- 汽車維修課程設(shè)計(jì)--汽車4s店總體設(shè)計(jì)
- 4S店車輛管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 4s店培訓(xùn)管理規(guī)定
- 汽車4S店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 汽車4s店服務(wù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 上汽集團(tuán)汽車4s店管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 汽車4s店設(shè)計(jì)淺析
- 4s店實(shí)習(xí)報(bào)告5篇
- 4s店職業(yè)衛(wèi)生管理檔案
- 汽車4s店管理模式
- 課程設(shè)計(jì)說明書4s
- 汽車4s店管理系統(tǒng)分析及設(shè)計(jì)-論文
- 汽車4s店銷售管理系統(tǒng)分析與設(shè)計(jì)
- 汽車4S店服務(wù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 4s店汽車銷售客戶管理系統(tǒng)設(shè)計(jì)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論