




已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)庫(kù)系統(tǒng)原理課程設(shè)計(jì)報(bào)告-平面設(shè)計(jì)公司業(yè)務(wù)管理系統(tǒng)姓 名: 學(xué) 號(hào): 指導(dǎo)老師: 起始時(shí)間:2010年3月3日結(jié)束時(shí)間:2010年5月28日目錄第一章概述31.1項(xiàng)目背景31.2編寫目的31.3軟件定義31.4開(kāi)發(fā)環(huán)境3第二章需求分析32.1信息要求42.處理要求42.3安全性與完整性要求5第三章概念設(shè)計(jì)53.1整體E-R圖53.2用戶E-R圖63.3客戶E-R圖63.4員工E-R圖63.5稿件E-R圖73.6單據(jù)E-R圖7第四章邏輯結(jié)構(gòu)設(shè)計(jì)74.1用戶關(guān)系表74.2客戶關(guān)系表74.3稿件關(guān)系表84.4員工關(guān)系表84.5單據(jù)關(guān)系表9第五章主要模塊設(shè)計(jì)與代碼95.1登錄模塊設(shè)計(jì)95.2主界面模塊設(shè)計(jì)105.3信息修改模塊設(shè)計(jì)125.4業(yè)務(wù)信息模塊設(shè)計(jì)145.5綜合查詢模塊設(shè)計(jì)185.6連接數(shù)據(jù)庫(kù)模塊設(shè)計(jì)19第六章總結(jié)19第七章參考文獻(xiàn)20第一章 概述1.1項(xiàng)目背景該公司經(jīng)營(yíng)平面設(shè)計(jì)業(yè)務(wù)。業(yè)務(wù)員負(fù)責(zé)聯(lián)系業(yè)務(wù),并將客戶的設(shè)計(jì)要求進(jìn)行登記,然后交由設(shè)計(jì)人員設(shè)計(jì)。設(shè)計(jì)完成后由專人負(fù)責(zé)送貨并收款??蛻裘看蔚脑O(shè)計(jì)要求可能多個(gè)不同規(guī)格的稿件,這次要求的所有稿件構(gòu)成一份單據(jù),稱為為“預(yù)訂單”。設(shè)計(jì)人員從預(yù)訂單中選取其中的一個(gè)進(jìn)行設(shè)計(jì),正在設(shè)計(jì)中的預(yù)訂單稱為“在建單”,已經(jīng)完成設(shè)計(jì)的在建單稱為“送貨單”,已經(jīng)送貨的送貨單稱為“歷史單”。設(shè)計(jì)人員一旦開(kāi)始設(shè)計(jì)某一預(yù)訂單,就必須負(fù)責(zé)完成預(yù)訂單、在建單、送貨單三個(gè)流程。業(yè)務(wù)員的月薪按照每月聯(lián)系的業(yè)務(wù)提成3%;、設(shè)計(jì)員的月薪按照每月完成的設(shè)計(jì)單提成3%;送貨人的月薪按照每月送貨的業(yè)務(wù)提成1%。1.2 編寫目的從案例來(lái)講,隨著公司業(yè)務(wù)的增多,需要一個(gè)完善的業(yè)務(wù)系統(tǒng)來(lái)管理,在此平臺(tái)上公司能更好的運(yùn)作;從個(gè)人來(lái)講,為了更好地了解數(shù)據(jù)庫(kù),同時(shí)提高自己的動(dòng)手能力。1.3軟件定義用VB和SQL共同構(gòu)建適合公司日常業(yè)務(wù)操作的應(yīng)用程序。1.4開(kāi)發(fā)環(huán)境 普通PC機(jī)一臺(tái),安裝Microsoft Visual Basic / Microsoft SQL sever。第二章 需求分析2.1信息要求用戶基本信息:用戶姓名、用戶密碼、權(quán)限??蛻艋拘畔ⅲ嚎蛻裘Q、聯(lián)系人、聯(lián)系人電話、傳真、郵箱、公司地址。稿件基本信息:稿件名稱、長(zhǎng)度寬度、規(guī)格、色數(shù)、輸出機(jī)型、P數(shù)。員工基本信息:編號(hào)、員工名、性別、職位、月薪、出生日期、入職日期、聯(lián)系電話、聯(lián)系地址。單據(jù)基本信息:?jiǎn)翁?hào)、性質(zhì)、客戶名稱、營(yíng)業(yè)員、設(shè)計(jì)者、送貨人、創(chuàng)建及送貨日期。(單據(jù)性質(zhì)包括預(yù)訂單、在建單、送貨單、歷史單)2.2處理要求 系統(tǒng)的功能模塊大體可以設(shè)計(jì)成如圖1-1所示。登陸界面主界面員工信息管理界面業(yè)務(wù)信息查詢管理界面客戶信息管理界面信息修改管理界面綜合信息查詢界面 預(yù)訂單在建單送貨單歷史單所有單單據(jù)信息修改稿件信息修改圖1-1 系統(tǒng)功能模塊圖從登錄用戶上看,登錄用戶需要使用該系統(tǒng)對(duì)全體用戶的資料進(jìn)行維護(hù)和管理,可以進(jìn)入各個(gè)界面查看和修改,以便對(duì)各個(gè)員工的工作進(jìn)行監(jiān)督和干涉。2.3安全性與完整性要求系統(tǒng)數(shù)據(jù)完整性與安全性要求如下:從用戶基本信息上看,系統(tǒng)要求必須有用戶姓名、用戶權(quán)限、密碼等。密碼或用戶名字錯(cuò)誤無(wú)法登陸。從稿件基本信息上看,系統(tǒng)要求每張稿件必須有稿件名稱、長(zhǎng)度寬度、規(guī)格、色數(shù)、機(jī)型等。允許登陸用戶修改信息。從客戶基本信息上看,系統(tǒng)要求每位客戶都必須有客戶名稱、聯(lián)系人、聯(lián)系電話、公司地址等。允許登陸用戶修改信息。從單據(jù)基本信息上看,系統(tǒng)要求單據(jù)必須必須有單號(hào)、性質(zhì)、客戶名稱、營(yíng)業(yè)員、設(shè)計(jì)者、送貨人、創(chuàng)建及送貨日期。允許登陸用戶修改信息。第三章 概念設(shè)計(jì)3.1整體E-R圖根據(jù)上面的定義可以得到以下整體的E-R圖:圖1-2 整體E-圖預(yù)定單在建單送貨單歷史單稿件客戶用戶預(yù)定設(shè)計(jì)送貨存檔3.2用戶E-R圖根據(jù)系統(tǒng)對(duì)用戶完整性約束等條件定義用戶的E-R圖如下:用戶用戶姓名用戶密碼權(quán)限圖1-3 用戶E-圖3.3客戶E-R圖根據(jù)系統(tǒng)對(duì)客戶完整性約束等條件定義客戶的E-R圖如下:圖1-4 客戶E-圖客戶客戶名稱聯(lián)系人聯(lián)系人電話傳真郵箱公司地址3.4員工E-R圖根據(jù)系統(tǒng)對(duì)客戶完整性約束等條件定義員工的E-R圖如下:圖1-5 員工E-圖員工編號(hào)員工名職位出生日期入職日期聯(lián)系電話聯(lián)系地址月薪性別3.5稿件E-R圖根據(jù)系統(tǒng)對(duì)稿件完整性約束等條件定義稿件的E-R圖如下:稿件稿件名稱長(zhǎng)度寬度規(guī)格色數(shù)P數(shù)輸出機(jī)型圖1-6 稿件E-圖3.6單據(jù)E-R圖根據(jù)系統(tǒng)對(duì)單據(jù)完整性約束等條件定義單據(jù)的E-R圖如下:圖1-7單據(jù)E-圖單號(hào)營(yíng)業(yè)員客戶名稱設(shè)計(jì)者送貨人人人者性質(zhì)創(chuàng)建日期送貨日期單據(jù)第四章 邏輯結(jié)構(gòu)設(shè)計(jì)4.1用戶關(guān)系表根據(jù)用戶的E-R圖得到如下關(guān)系表:表1-1 用戶表4.2客戶關(guān)系表根據(jù)客戶的E-R圖得到如下關(guān)系表:表1-2 客戶表4.3稿件關(guān)系表根據(jù)稿件的E-R圖得到如下關(guān)系表:表1-3 稿件表4.4員工關(guān)系表根據(jù)員工的E-R圖得到如下關(guān)系表:表1-4 員工表4.5單據(jù)關(guān)系表根據(jù)單據(jù)的E-R圖得到如下關(guān)系表:表1-5 單據(jù)表第五章 主要模塊設(shè)計(jì)與代碼5.1登錄模塊設(shè)計(jì)主要代碼如下:Private Sub Command1_Click() Dim strSQL As String UserName = CStr(Trim(TxtUserName.Text) PassWord = CStr(Trim(TxtPassWord.Text)If UserName Empty And PassWord Empty Then strSQL = select * from 用戶信息 where 用戶名= & UserName & and 密碼 = & PassWord & If RsLoginCheck.State = adStateClosed Then RsLoginCheck.Open strSQL, DBCON, adOpenKeyset, adLockPessimistic, adCmdText End If If RsLoginCheck.EOF = False Then Group = RsLoginCheck.Fields(1).Value Group1 = RsLoginCheck.Fields(3).Value Group5 = RsLoginCheck.Fields(0).Value RsLoginCheck.Close Unload Me 主界面.Show ElseIf Counts 2 Then MsgBox 用戶名域密碼錯(cuò)誤, vbExclamation + vbOKOnly, 登錄失敗 RsLoginCheck.Close Counts = Counts + 1 Else MsgBox 密碼錯(cuò)誤不得超過(guò)三次,否則視您為非法用戶!, vbCritical, 警告 End End IfElse MsgBox 用戶名密碼不能為空, vbExclamation + vbOKOnly, 登錄失敗End IfEnd SubPrivate Sub Command2_Click() EndEnd Sub5.2主界面模塊設(shè)計(jì)主要代碼如下:Private Sub exitos_Click()EndEnd SubPrivate Sub Image1_Click() 員工信息.ShowUnload 業(yè)務(wù)信息Unload 客戶信息Unload 單據(jù)信息Unload 綜合信息查詢End SubPrivate Sub Image2_Click() 客戶信息.ShowUnload 員工信息Unload 業(yè)務(wù)信息Unload 單據(jù)信息Unload 綜合信息查詢End SubPrivate Sub Image3_Click() 業(yè)務(wù)信息.ShowUnload 員工信息Unload 客戶信息Unload 單據(jù)信息Unload 綜合信息查詢End SubPrivate Sub Image4_Click() EndEnd SubPrivate Sub Image5_Click() 綜合信息查詢.ShowUnload 員工信息Unload 客戶信息Unload 業(yè)務(wù)信息Unload 單據(jù)信息End SubPrivate Sub Image6_Click() 單據(jù)信息.ShowUnload 員工信息Unload 客戶信息Unload 綜合信息查詢End SubPrivate Sub khxx_Click()客戶信息.ShowUnload 員工信息Unload 業(yè)務(wù)信息Unload 單據(jù)信息Unload 綜合信息查詢End SubPrivate Sub ygxx_Click()員工信息.ShowUnload 業(yè)務(wù)信息Unload 客戶信息Unload 單據(jù)信息Unload 綜合信息查詢End SubPrivate Sub ymcx_Click()業(yè)務(wù)信息.ShowUnload 員工信息Unload 客戶信息Unload 單據(jù)信息Unload 綜合信息查詢End SubPrivate Sub ymxg_click()業(yè)務(wù)信息.ShowUnload 員工信息Unload 客戶信息Unload 綜合信息查詢End SubPrivate Sub zhcx_click()綜合信息查詢.ShowUnload 員工信息Unload 客戶信息Unload 單據(jù)信息End SubPrivate Sub Timer1_Timer()Label1.Caption = NowEnd Sub5.3信息修改模塊設(shè)計(jì)主要代碼如下:Private Sub Command1_Click()a = CZSX.Textb = CZZ.TextIf a Then If b = Then MsgBox 請(qǐng)輸入查找值, , 提示 Else Adodc1.CommandType = adCmdText Adodc1.RecordSource = select * from orderF where & a & = & b & Adodc1.Refresh DataGrid1.Refresh Set DataGrid1.DataSource = Adodc1 End IfElseMsgBox 請(qǐng)選擇要查找的相關(guān)屬性, , 提示信息End IfEnd SubPrivate Sub Command2_Click()Set DataGrid1.DataSource = Adodc1CZZ.Text = End SubPrivate Sub Command3_Click()a = Combo1.Textb = Text1.TextIf a Then If b = Then MsgBox 請(qǐng)輸入查找值, , 提示 Else Adodc2.CommandType = adCmdText Adodc2.RecordSource = select * from model where & a & = & b & Adodc2.Refresh DataGrid2.Refresh Set DataGrid2.DataSource = Adodc2 End IfElseMsgBox 請(qǐng)選擇要查找的相關(guān)屬性, , 提示信息End IfEnd SubPrivate Sub Command4_Click()Set DataGrid2.DataSource = Adodc2Text1.Text = End Sub5.4業(yè)務(wù)信息模塊設(shè)計(jì)主要代碼如下:Private Sub DataGrid1_RowColChange(lastrow As Variant, ByVal lastcol As Integer)sn = DataGrid1.Columns(單號(hào)).CellText(DataGrid1.Bookmark)Adodc6.CommandType = adCmdTextAdodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.RefreshDataGrid6.RefreshSet DataGrid6.DataSource = Adodc6*For i = 0 To 5 Label1(i).Caption = DataGrid1.Columns(i).CellText(DataGrid1.Bookmark)Next iEnd SubPrivate Sub DataGrid2_RowColChange(lastrow As Variant, ByVal lastcol As Integer)sn = DataGrid2.Columns(單號(hào)).CellText(DataGrid2.Bookmark)Adodc6.CommandType = adCmdTextAdodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.RefreshDataGrid6.RefreshSet DataGrid6.DataSource = Adodc6*For i = 0 To 5 Label1(i).Caption = DataGrid2.Columns(i).CellText(DataGrid2.Bookmark)Next iEnd SubPrivate Sub DataGrid3_RowColChange(lastrow As Variant, ByVal lastcol As Integer)sn = DataGrid3.Columns(單號(hào)).CellText(DataGrid3.Bookmark)Adodc6.CommandType = adCmdTextAdodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.RefreshDataGrid6.RefreshSet DataGrid6.DataSource = Adodc6*For i = 0 To 5 Label1(i).Caption = DataGrid3.Columns(i).CellText(DataGrid3.Bookmark)Next iEnd SubPrivate Sub DataGrid4_RowColChange(lastrow As Variant, ByVal lastcol As Integer)sn = DataGrid4.Columns(單號(hào)).CellText(DataGrid4.Bookmark)Adodc6.CommandType = adCmdTextAdodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.RefreshDataGrid6.RefreshSet DataGrid6.DataSource = Adodc6*For i = 0 To 5 Label1(i).Caption = DataGrid4.Columns(i).CellText(DataGrid4.Bookmark)Next iEnd SubPrivate Sub DataGrid5_RowColChange(lastrow As Variant, ByVal lastcol As Integer) sn = DataGrid5.Columns(單號(hào)).CellText(DataGrid5.Bookmark) Adodc6.CommandType = adCmdText Adodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.Recordset.PageSize = 5 Adodc6.Refresh DataGrid6.Refresh Set DataGrid6.DataSource = Adodc6 * For i = 0 To 5 Label1(i).Caption = DataGrid5.Columns(i).CellText(DataGrid5.Bookmark) Next i - For i = 0 To Adodc6.Recordset.RecordCount - 1 Allcost = Allcost + Adodc6.Recordset.Fields(小計(jì)).Value If Adodc6.Recordset.EOF Then Exit For Adodc6.Recordset.MoveNext Next i Label3.Caption = AllcostEnd SubPrivate Sub Label4_Click() sn = DataGrid1.Columns(單號(hào)).CellText(DataGrid1.Bookmark)Adodc6.CommandType = adCmdTextAdodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.RefreshDataGrid6.RefreshSet DataGrid6.DataSource = Adodc6*For i = 0 To 5 Label1(i).Caption = DataGrid1.Columns(i).CellText(DataGrid1.Bookmark)Next iDataGrid1.Visible = TrueDataGrid2.Visible = FalseDataGrid3.Visible = FalseDataGrid4.Visible = FalseDataGrid5.Visible = FalseEnd SubPrivate Sub Label6_Click() sn = DataGrid2.Columns(單號(hào)).CellText(DataGrid2.Bookmark)Adodc6.CommandType = adCmdTextAdodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.RefreshDataGrid6.RefreshSet DataGrid6.DataSource = Adodc6*For i = 0 To 5 Label1(i).Caption = DataGrid2.Columns(i).CellText(DataGrid2.Bookmark)Next iDataGrid1.Visible = FalseDataGrid2.Visible = TrueDataGrid3.Visible = FalseDataGrid4.Visible = FalseDataGrid5.Visible = FalseEnd SubPrivate Sub Label7_Click() sn = DataGrid3.Columns(單號(hào)).CellText(DataGrid3.Bookmark)Adodc6.CommandType = adCmdTextAdodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.RefreshDataGrid6.RefreshSet DataGrid6.DataSource = Adodc6*For i = 0 To 5 Label1(i).Caption = DataGrid3.Columns(i).CellText(DataGrid3.Bookmark)Next iDataGrid1.Visible = FalseDataGrid2.Visible = FalseDataGrid3.Visible = TrueDataGrid4.Visible = FalseDataGrid5.Visible = FalseEnd SubPrivate Sub Label8_Click() sn = DataGrid4.Columns(單號(hào)).CellText(DataGrid4.Bookmark)Adodc6.CommandType = adCmdTextAdodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.RefreshDataGrid6.RefreshSet DataGrid6.DataSource = Adodc6*For i = 0 To 5 Label1(i).Caption = DataGrid4.Columns(i).CellText(DataGrid4.Bookmark)Next iDataGrid1.Visible = FalseDataGrid2.Visible = FalseDataGrid3.Visible = FalseDataGrid4.Visible = TrueDataGrid5.Visible = FalseEnd SubPrivate Sub Label9_Click() sn = DataGrid5.Columns(單號(hào)).CellText(DataGrid5.Bookmark) Adodc6.CommandType = adCmdText Adodc6.RecordSource = select * from model where 單號(hào) = & sn & Adodc6.Recordset.PageSize = 5 Adodc6.Refresh DataGrid6.Refresh Set DataGrid6.DataSource = Adodc6 * For i = 0 To 5 Label1(i).Caption = DataGrid5.Columns(i).CellText(DataGrid5.Bookmark) Next i - For i = 0 To Adodc6.Recordset.RecordCount - 1 Allcost = Allcost + Adodc6.Recordset.Fields(小計(jì)).Value If Adodc6.Recordset.EOF Then Exit For Adodc6.Recordset.MoveNext Next i Label3.Caption = Allcost DataGrid1.Visible = FalseDataGrid2.Visible = FalseDataGrid3.Visible = FalseDataGrid4.Visible = FalseDataGrid5.Visible = TrueEnd SubPrivate Sub Timer1_Timer()TIMELabel.Caption = NowEnd SubPrivate Sub Form_Resize()TIMELabel.Top = Me.Height - TIMELabel.HeightTIMELabel.Left = Me.Width - TIMELabel.WidthEnd Sub5.5綜合查詢模塊設(shè)計(jì)主要代碼如下:Private Sub Command1_Click()Dim moenybegin = DTP1.Valuee_nd = DTP2.ValueAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select SUM(小計(jì))合計(jì) from orderf,model where orderf.單號(hào) = model.單號(hào) and 送貨日期 & begin & and 送貨日期 & e_nd & Adodc1.RefreshText1.Text = Adodc1.Recordset.Fields(合計(jì)).Value & ¥End Sub5.6連接數(shù)據(jù)庫(kù)模塊設(shè)計(jì)主要代碼如下:Sub main() If FileExist(App.Path + db.ini) = False Then xx = 0 yy = 0 WriteINI App.Path & db.ini, config, server, . W
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版房屋租賃合同3
- 《難治性腎衰竭》課件
- 2025年裝修新房前簽訂合同的重點(diǎn)注意事項(xiàng)
- 2025世紀(jì)廣場(chǎng)大酒店不銹鋼大門及護(hù)欄生產(chǎn)與安裝合同
- 《典型的微生物》課件
- 《愛(ài)耳日宣傳》課件
- 《人口與資源關(guān)系》課件
- 《專注匠心永恒》課件
- 山東省濰坊市昌樂(lè)縣市級(jí)名校2024-2025學(xué)年中考語(yǔ)文試題命題比賽模擬試卷(25)含解析
- 石家莊鐵道大學(xué)《外貿(mào)英語(yǔ)寫作》2023-2024學(xué)年第一學(xué)期期末試卷
- 鋼結(jié)構(gòu)門式剛架廠房設(shè)計(jì)土木工程畢業(yè)設(shè)計(jì)
- 橙色黑板風(fēng)小學(xué)生知識(shí)產(chǎn)權(quán)科普PPT模板
- 中國(guó)供銷合作社標(biāo)識(shí)使用手冊(cè)課件
- 幼兒園兒歌100首
- Q∕CR 9218-2015 鐵路隧道監(jiān)控量測(cè)技術(shù)規(guī)程
- 甲狀腺解剖及正常超聲切面ppt課件
- 易學(xué)書籍大全291本
- 上海市城市地下空間建設(shè)用地審批及房地產(chǎn)登記試行規(guī)定
- 蠕墨鑄鐵項(xiàng)目可行性研究報(bào)告寫作范文
- ISP98《備用信用證慣例》中英文
- “V”法鑄造工藝及應(yīng)用
評(píng)論
0/150
提交評(píng)論