《運(yùn)輸行業(yè)管理系統(tǒng)》PPT課件.ppt
《《運(yùn)輸行業(yè)管理系統(tǒng)》PPT課件.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《《運(yùn)輸行業(yè)管理系統(tǒng)》PPT課件.ppt(76頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
運(yùn)輸行業(yè)管理系統(tǒng),系統(tǒng)分析,本系統(tǒng)的主要功能:◇記錄司機(jī)的基本資料,包括姓名、身份證號(hào)等基本信息。并將司機(jī)的資料存入司機(jī)檔案數(shù)據(jù)表DriverInfo,并可以對(duì)該表中的數(shù)據(jù)進(jìn)行修改、刪除及查詢。◇記錄車(chē)輛的基本信息,包括車(chē)號(hào)、隸屬車(chē)隊(duì)等基本信息。并將車(chē)輛的資料存入車(chē)輛檔案數(shù)據(jù)表CarInfo中,并可以對(duì)該表進(jìn)行修改、刪除及查詢?!髽I(yè)務(wù)管理-運(yùn)營(yíng)業(yè)務(wù)記錄管理,即維護(hù)WorkRec表,包括運(yùn)行車(chē)輛ID、司機(jī)ID等屬性,并可執(zhí)行添加、修改、刪除和查詢等操作?!髽I(yè)務(wù)管理-車(chē)輛維修記錄管理,即維護(hù)RepairRec數(shù)據(jù)表,并可執(zhí)行添加、修改、刪除和查詢等操作?!髽I(yè)務(wù)管理-車(chē)輛違章記錄關(guān)系,即維護(hù)PecRec數(shù)據(jù)表,并可執(zhí)行添加、修改、刪除和查詢等操作?!髽I(yè)務(wù)管理-車(chē)輛事故記錄管理,即維護(hù)AccRec數(shù)據(jù)表,并可執(zhí)行添加、修改、刪除和查詢等操作?!竺咳兆詣?dòng)結(jié)算啟動(dòng)程序會(huì)自動(dòng)彈出昨日結(jié)算窗口,提示昨日收支及盈利情況,該窗口也可在程序運(yùn)行時(shí)調(diào)出。,系統(tǒng)設(shè)計(jì)思想,運(yùn)輸行業(yè)管理系統(tǒng),本例的運(yùn)輸行業(yè)管理系統(tǒng)應(yīng)用于某運(yùn)輸且的數(shù)字化管理,實(shí)現(xiàn)運(yùn)輸企業(yè)管理的易操作、可維護(hù)性等。首先要求系統(tǒng)能夠完整對(duì)司機(jī)檔案和車(chē)輛檔案的記錄和查詢等各種操作,為此,系統(tǒng)必須能夠維護(hù)兩個(gè)分別記錄司機(jī)檔案和車(chē)輛檔案詳細(xì)資料信息的數(shù)據(jù)表,能對(duì)該數(shù)據(jù)表進(jìn)行寫(xiě)入和讀取數(shù)據(jù)的操作。此外,系統(tǒng)還要求記錄運(yùn)輸企業(yè)日常運(yùn)營(yíng)的各項(xiàng)業(yè)務(wù),這樣系統(tǒng)還需要維護(hù)域日常業(yè)務(wù)相關(guān)的車(chē)輛運(yùn)營(yíng)記錄表、車(chē)輛維修記錄表、車(chē)輛違章記錄表和車(chē)輛事故記錄表等。系統(tǒng)數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方式主要通過(guò)ADODC控件對(duì)數(shù)據(jù)庫(kù)進(jìn)行讀、寫(xiě)和查詢。,系統(tǒng)結(jié)構(gòu)設(shè)計(jì),運(yùn)輸行業(yè)管理系統(tǒng),,數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)需求分析,運(yùn)輸行業(yè)管理系統(tǒng),◆用戶可維護(hù)司機(jī)檔案,進(jìn)行添加、修改和刪除操作,并能通過(guò)姓名、身份證號(hào)、性別、司機(jī)工號(hào)及備注等項(xiàng)目對(duì)司機(jī)檔案進(jìn)行查詢?!羲緳C(jī)ID必須唯一?!粲脩艨蓪?duì)車(chē)輛檔案進(jìn)行添加、修改和刪除操作,并能通過(guò)車(chē)號(hào)、車(chē)輛是否年檢、是否有車(chē)險(xiǎn)及備注等對(duì)車(chē)輛檔案進(jìn)行查詢?!糗?chē)輛ID必須唯一。◆用戶可對(duì)車(chē)輛運(yùn)營(yíng)記錄進(jìn)行添加、修改和刪除操作,并能通過(guò)車(chē)輛ID,司機(jī)ID,運(yùn)營(yíng)日期及備注等對(duì)車(chē)輛運(yùn)營(yíng)記錄進(jìn)行查詢?!粲脩艨蓪?duì)車(chē)輛維修記錄進(jìn)行查詢、修改和刪除操作,并能通過(guò)車(chē)輛ID,維修日期及備注等對(duì)車(chē)輛維修記錄進(jìn)行查詢。◆用戶可對(duì)車(chē)輛違章記錄進(jìn)行添加、修改和刪除操作,并能通過(guò)車(chē)輛ID,司機(jī)ID,車(chē)輛違章日期及備注等對(duì)車(chē)輛違章記錄進(jìn)行查詢?!粲脩艨蓪?duì)車(chē)輛事故記錄進(jìn)行添加、修改和刪除操作,并通過(guò)車(chē)輛ID,司機(jī)ID、事故日期及備注等對(duì)車(chē)輛事故記錄進(jìn)行查詢?!羯鲜鰯?shù)據(jù)中,車(chē)輛運(yùn)營(yíng)記錄、車(chē)輛維修記錄、車(chē)輛違章記錄和車(chē)輛事故記錄中的司機(jī)ID和車(chē)輛ID必須與司機(jī)檔案中的司機(jī)ID,車(chē)輛檔案中的車(chē)輛ID相關(guān)聯(lián)。,數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì),運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案實(shí)體(司機(jī)檔案ID,司機(jī)姓名,司機(jī)身份證號(hào),司機(jī)性別,司機(jī)出生日期,司機(jī)工號(hào),司機(jī)電話,隸屬車(chē)隊(duì)名,司機(jī)駕照號(hào),駕照截止日期,備注),車(chē)輛檔案實(shí)體(車(chē)輛檔案ID,車(chē)號(hào),隸屬車(chē)隊(duì)名,車(chē)輛購(gòu)買(mǎi)日期,是否年檢,是否車(chē)險(xiǎn),備注),運(yùn)輸行業(yè)管理系統(tǒng),數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì),其余E-R圖請(qǐng)見(jiàn)書(shū)P10~P11,數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì),運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案數(shù)據(jù)表,運(yùn)輸行業(yè)管理系統(tǒng),數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì),車(chē)輛檔案數(shù)據(jù)表,其余表請(qǐng)見(jiàn)書(shū)P12~P13,表之間的關(guān)系,運(yùn)輸行業(yè)管理系統(tǒng),運(yùn)輸行業(yè)管理系統(tǒng),數(shù)據(jù)庫(kù)的連接,以Access數(shù)據(jù)庫(kù)系統(tǒng)為例,連接數(shù)據(jù)庫(kù)需要用到ADODC控件1ADODC控件的添加選擇菜單命令【工程】→【部件】,彈出“部件對(duì)話框”,選擇MicrosoftADODataControl6.0(OLEDB),運(yùn)輸行業(yè)管理系統(tǒng),數(shù)據(jù)庫(kù)的連接,2添加引用選擇【工程】→【引用】,在彈出的“引用”對(duì)話框中選擇MicrosoftActiveXDataObject2.0library。,部件添加說(shuō)明,ToolBar、ImageList:MicrosoftWindowsCommonControls6.0,DTPicker:MicrosoftWindowsCommonControls-26.0,ADODC:MicrosoftADODataControl6.0(OLEDB),DataGrid:MicrosoftDataGridControl6.0(OLEDB),SSTable:MicrosoftTabbedDialogControl6.0,MicrosoftAxtivexDataObjects2.0,引用添加說(shuō)明,系統(tǒng)實(shí)施,運(yùn)輸行業(yè)管理系統(tǒng),公共模塊,1新建工程新建EXE工程,保存。2添加MicrosoftADODataControl6.0部件和MicrosoftActiveXDataObject2.0library引用。3定義全局變量添加公共模塊,定義全局變量,用于數(shù)據(jù)庫(kù)操作。PublicDBCnAsNewADODB.ConnectionPublicCnStrAsStringADODB.Connection,用于連接、打開(kāi)數(shù)據(jù)庫(kù),界面設(shè)計(jì),運(yùn)輸行業(yè)管理系統(tǒng),1設(shè)計(jì)歡迎界面,歡迎界面用于進(jìn)行提示,用戶單擊進(jìn)入系統(tǒng)。,歡迎界面屬性及控件見(jiàn)書(shū)P18表1-7,運(yùn)輸行業(yè)管理系統(tǒng),【工程】→【添加窗體】,添加一個(gè)窗體,命令為FormLogin,設(shè)置其屬性。需要說(shuō)明:在窗體的Load事件中(1)App對(duì)象是通過(guò)關(guān)鍵字App訪問(wèn)的全局對(duì)象。它指定如下信息:應(yīng)用程序的標(biāo)題、版本信息、可執(zhí)行文件和幫助文件的路徑及名稱(chēng)以及是否運(yùn)行前一個(gè)應(yīng)用程序的示例。(2)PrevInstance屬性返回一個(gè)值,該值指示是否已經(jīng)有前一個(gè)應(yīng)用程序?qū)嵗谶\(yùn)行。語(yǔ)法:object.PrevInstance。object所在處代表一個(gè)對(duì)象表達(dá)式,其值是“應(yīng)用于”列表中的一個(gè)對(duì)象。IfApp.PrevInstanceThenMsgBox"您已經(jīng)啟動(dòng)過(guò)了本程序!",,"運(yùn)輸行業(yè)管理系統(tǒng)"EndEndIf(3)在LableEnter控件的單擊事件中添加啟動(dòng)主窗體代碼UnloadMeMDIFrm.Show,添加歡迎界面的過(guò)程,PrivateSubForm_Load()IfApp.PrevInstanceThenMsgBox"您已經(jīng)啟動(dòng)過(guò)了本程序!",,"運(yùn)輸管理系統(tǒng)"EndEndIfEndSubPrivateSubImage1_Click()UnloadMeMainFrm.ShowEndSub,2系統(tǒng)主界面布局設(shè)計(jì)主界面主要包括菜單、工具欄和程序主窗口。有以下功能:調(diào)用各子窗口。關(guān)于界面。退出系統(tǒng)?!竟こ獭俊咎砑覯DI窗體】,添加一個(gè)MDI窗體。工程中的MDI窗體時(shí)唯一的。添加了MDI窗體后,工程中的“添加MDI窗體”子菜單變?yōu)榛疑豢捎?。窗體控件見(jiàn)P19表1-8注意:添加ToolBar和ImageList之前,必須添加部件MicrosoftWindowsCommonControls6.0,界面設(shè)計(jì),運(yùn)輸行業(yè)管理系統(tǒng),3編輯主界面菜單【工具】->【菜單編輯器】,添加菜單主界面菜單設(shè)置見(jiàn)書(shū)P19表1-94系統(tǒng)主界面工具欄編輯ImageList控件,添加圖片,用戶和工具欄上的各個(gè)按鈕綁定。編輯Toolbar控件,添加按鈕。按鈕屬性設(shè)置見(jiàn)P21表1-10,界面設(shè)計(jì),運(yùn)輸行業(yè)管理系統(tǒng),界面設(shè)計(jì),運(yùn)輸行業(yè)管理系統(tǒng),運(yùn)輸行業(yè)管理系統(tǒng),系統(tǒng)主界面實(shí)現(xiàn),PrivateSubMDIForm_Load()設(shè)置數(shù)據(jù)庫(kù)連接字符串CnStr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\DocumentsandSettings\Administrator\桌面\信息系統(tǒng)分析與設(shè)計(jì)教學(xué)相關(guān)資料\代碼\運(yùn)輸行業(yè)管理系統(tǒng)\Transportation.mdb;PersistSecurityInfo=False"連接數(shù)據(jù)庫(kù)DBCn.OpenCnStr日結(jié)算自動(dòng)提示FormBal.ShowMe.WindowState=2’窗體最大化EndSub,運(yùn)輸行業(yè)管理系統(tǒng),系統(tǒng)主界面實(shí)現(xiàn),添加響應(yīng)菜單,PrivateSubOpe_Acc_Man_Click()FromAcc.ShowFromAcc.SSTab1.Tab=0FromAcc.SetFocusEndSubPrivateSubOpe_Acc_Query_Click()FromAcc.ShowFromAcc.SSTab1.Tab=1FromAcc.SetFocusEndSubPrivateSubOpe_Pec_Man_Click()FromPec.ShowFromPec.SSTab1.Tab=0FromPec.SetFocusEndSub……,運(yùn)輸行業(yè)管理系統(tǒng),系統(tǒng)主界面實(shí)現(xiàn),添加工具欄響應(yīng)函數(shù),PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)SelectCaseButton.Key司機(jī)檔案Case“Key_Dri“此關(guān)鍵字即為設(shè)計(jì)工具欄按鈕時(shí)指定的關(guān)鍵字CallDri_Man_Click這個(gè)函數(shù)名稱(chēng)為菜單響應(yīng)函數(shù)名,這樣菜單操作和工具欄上的按鈕操作就可以共享同一段代碼車(chē)輛檔案Case"Key_Car"CallCar_Man_Click運(yùn)營(yíng)管理Case"Key_Work"CallOpe_Work_Man_Click維修記錄Case"Key_Rep"CallOpe_Rep_Man_Click……EndSelectEndSub,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,一、界面設(shè)計(jì),控件詳細(xì)信息見(jiàn)書(shū)P26表1-11注意窗體的MDIChild屬性為T(mén)rue,TxtName,TxtNum,OptSex,DTPBir,TxtWorkNum,TxtRemark,TxtTel,TxtTeam,TxtLicenceNum,DTPLicDate,DataGrid1,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,部件添加說(shuō)明,ToolBar、ImageList:MicrosoftWindowsCommonControls6.0,DTPicker:MicrosoftWindowsCommonControls-26.0,ADODC:MicrosoftADODataControl6.0(OLEDB),DataGrid:MicrosoftDataGridControl6.0(OLEDB),SSTable:MicrosoftTabbedDialogControl6.0,MicrosoftAxtivexDataObjects2.0,引用添加說(shuō)明,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,司機(jī)檔案查詢界面設(shè)計(jì),,OptionButton,,TextBox,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,,ListView,OptQue,,TxtQueName,TxtQueNum,OptQueSex,TxtQueWorkNum,TxtQueRemark,LvResult,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,司機(jī)檔案表結(jié)構(gòu),在顯示查詢結(jié)果的ListView控件中添加上述給列,用于表示查詢出來(lái)的信息分量的意義。,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,(1)右鍵點(diǎn)擊ListView,選擇屬性,,,(2)點(diǎn)擊插入列,(3)輸入列標(biāo)題,,(4)指定列寬度,,(5)重復(fù)上述步驟,將所有的列插入,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,在任何一個(gè)窗體或選項(xiàng)卡中,只能有一組單選鈕,每次也只能選擇界面上單選鈕中的一個(gè)。要同時(shí)實(shí)現(xiàn)多組單選鈕,可以采用Frame(框架)控件,將多組單選鈕放在不同的框架中即可,在查詢選項(xiàng)卡中,查詢結(jié)果控件和其余的控件重疊,可以采用“置前”和“置后”命令對(duì)它進(jìn)行調(diào)整,然后配合其Visible屬性進(jìn)行控制。,界面設(shè)計(jì)技巧,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,司機(jī)檔案管理窗體初始化過(guò)程,初始化ADODC控件,連接數(shù)據(jù)庫(kù),設(shè)置列首Adodc1.ConnectionString=CnStr’設(shè)置連接字符串Adodc1.RecordSource=“SelectDriverIDas司機(jī)ID,”&_’設(shè)置數(shù)據(jù)集"DriverNameas姓名,"&_"DriverNumas身份證號(hào),"&_"DriverSexas性別,"&_"DriverBiras出生日期,"&_"DriverWorkNumas工號(hào),"&_"DriverTelas電話,"&_"DriverTeamas隸屬車(chē)隊(duì),"&_"DriverLicenceNumas司機(jī)駕照號(hào),"&_"DriverLicenceDateas駕照截止日期,"&_"Remarkas備注"&_"FromDriverInfo"Debug.PrintAdodc1.RecordSource將DataGrid控件與ADODC控件綁定SetDataGrid1.DataSource=Adodc1’,進(jìn)入“司機(jī)檔案”界面首先要對(duì)ADODC控件和DataGrid控件進(jìn)行初始化,這部分代碼在窗體的Load事件內(nèi)實(shí)現(xiàn)。,Form_Load(),運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,PrivateSubDataGrid1_RowColChange(LastRowAsVariant,ByValLastColAsInteger)檢驗(yàn)是否為空行IfDataGrid1.Columns(0).Text=“”Then’DataGrid1.Columns(0)為司機(jī)IDExitSubEndIf將DataGrid中數(shù)據(jù)讀入各個(gè)控件顯示數(shù)據(jù)內(nèi)容Me.TxtName.Text=DataGrid1.Columns(1).TextMe.TxtNum.Text=DataGrid1.Columns(2).TextIfDataGrid1.Columns(3).Text=0ThenMe.OptSex(0).Value=TrueElseMe.OptSex(1).Value=TrueEndIfMe.DTPBir.Value=DataGrid1.Columns(4).TextMe.TxtWorkNum.Text=DataGrid1.Columns(5).TextMe.TxtTel.Text=DataGrid1.Columns(6).TextMe.TxtTream.Text=DataGrid1.Columns(7).TextMe.TxtLicenceNum.Text=DataGrid1.Columns(8).TextMe.DTPLicDate.Value=DataGrid1.Columns(9).TextMe.TxtRemark.Text=DataGrid1.Columns(10).TextEndSub,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,添加司機(jī)檔案,,點(diǎn)擊添加,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,添加司機(jī)檔案,1檢查輸入信息是否正確,2根據(jù)輸入信息構(gòu)造SQL語(yǔ)句,3執(zhí)行SQL語(yǔ)句,沒(méi)有輸入司機(jī)姓名IfLen(Trim(Me.TxtName.Text))<=0ThenMsgBox"請(qǐng)輸入司機(jī)姓名!",,"添加司機(jī)檔案"ExitSubEndIf,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,檢查輸入信息是否正確(P31),String.trimClassOverview|ClassMembers|ThisPackage|AllPackagesSyntaxpublicStringtrim()Returnsthisstring,withwhitespaceremovedfromthefrontandend.DescriptionRemoveswhitespacefrombothendsofthisstring.,,‘Len()返回Long,其中包含字符串內(nèi)字符的數(shù)目,,輸入司機(jī)姓名不正確IfLen(Trim(Me.TxtName.Text))4ThenMsgBox“輸入司機(jī)姓名不正確!",,"添加司機(jī)檔案"ExitSubEndIf……,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,檢查輸入信息是否正確,SqlStr="INSERTINTODriverInfo"SqlStr=SqlStr",運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,DBCn.ExecuteSqlStr’執(zhí)行SQL語(yǔ)句,構(gòu)造SQL語(yǔ)句,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案管理模塊,在執(zhí)行SQL語(yǔ)句時(shí),對(duì)字符串的引用都要用左右兩個(gè)單引號(hào)分割,而程序會(huì)把字符串中的單引號(hào)看做是SQL語(yǔ)句的分隔符來(lái)處理,如果字符串中含有單引號(hào),需要用兩個(gè)單引號(hào)來(lái)代替一個(gè)單引號(hào),可以用Replace()函數(shù)來(lái)替換。,Remark=Replace(Trim(Me.TxtRemark.Text),”’”,”’’”),PrivateSubCmdAdd_Click()DimDriverSexAsIntegerDimrsAddAsNewADODB.RecordsetDimSqlStrAsStringDimRemarkAsString首先檢驗(yàn)輸入沒(méi)有輸入司機(jī)姓名IfLen(Trim(Me.TxtName.Text))4ThenMsgBox"輸入司機(jī)姓名不正確!",,"添加司機(jī)檔案"ExitSubEndIf沒(méi)有輸入身份證號(hào)IfLen(Trim(Me.TxtNum.Text))18ThenMsgBox"身份證號(hào)不正確,請(qǐng)輸入18位身份證號(hào)!",,"添加司機(jī)檔案"ExitSubEndIf,沒(méi)有選擇司機(jī)性別IfMe.OptSex(0).Value=FalseAndMe.OptSex(1).Value=FalseThenMsgBox"請(qǐng)選擇司機(jī)性別!",,"添加司機(jī)檔案"ExitSubEndIf沒(méi)有輸入司機(jī)工號(hào)IfLen(Trim(Me.TxtWorkNum.Text))11ThenMsgBox"輸入的電話不正確,請(qǐng)輸入11位電話號(hào)碼!",,"添加司機(jī)檔案"ExitSubEndIf沒(méi)有輸入隸屬車(chē)隊(duì)名IfLen(Trim(Me.TxtTeam.Text))<=0ThenMsgBox"請(qǐng)輸入隸屬車(chē)隊(duì)名!",,"添加司機(jī)檔案"ExitSubEndIf,沒(méi)有輸入司機(jī)駕照號(hào)IfLen(Trim(Me.TxtLicenceNum.Text))4ThenMsgBox"司機(jī)姓名長(zhǎng)度超出范圍!",,"查詢司機(jī)檔案"ExitSubEndIf生成查詢語(yǔ)句Questr="select*fromDriverInfowhereDriverNameLike%"&DriverName&"%",DimRsQueryAsNewADODB.Recordset’結(jié)果集對(duì)象,司機(jī)檔案查詢部分代碼(P36),RsQuery.OpenQuestr,DBCn,adOpenStatic,adLockOptimistic顯示查詢結(jié)果IfRsQuery.EOFThenMsgBox"數(shù)據(jù)庫(kù)中沒(méi)有符合要求的記錄!",,"查詢司機(jī)檔案"ExitSubEndIf,打開(kāi)數(shù)據(jù)集,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案查詢模塊,adOpenStatic向前游標(biāo),adOpenKeyset鍵集游標(biāo)adLockOptimistic設(shè)置窗口為固定的大小,RsQuery.MoveFirst’數(shù)據(jù)集指針指向第一個(gè)記錄RsQuery.REcordCount’數(shù)據(jù)集中記錄的個(gè)數(shù)RsQuery.MoveNext’數(shù)據(jù)集指向下一條記錄,查詢串,,連接對(duì)象,,ADODB.Recordset.Open中參數(shù)的用法Recordset對(duì)象的Open方法原型:Open([Source],[ActiveConnection],[CursorType],[LockType],[Options])CursorType游標(biāo)類(lèi)型:ConstadOpenForwardOnly=0前向游標(biāo),為缺省游標(biāo),提供最快的運(yùn)行性能。用它打開(kāi)recordset,從對(duì)至尾順序取得所有結(jié)果。它不支持向后滾動(dòng),只允許在結(jié)果間單向移動(dòng)。ConstadOpenKeyset=1靜態(tài)游標(biāo),反映第一次打開(kāi)游標(biāo)時(shí)表中數(shù)據(jù)的狀態(tài),游標(biāo)無(wú)法查明底層表中的數(shù)據(jù)行是否更新過(guò)、刪除過(guò)或添加了新的數(shù)據(jù)。不過(guò)與只能前移的洲標(biāo)不同,靜態(tài)游標(biāo)可以在結(jié)果間前后滾動(dòng)。ConstadOpenDynamic=2鍵盤(pán)驅(qū)動(dòng)的游標(biāo),可以查詢表中底層數(shù)據(jù)行的某些變化,但不是全部。它特別是可以準(zhǔn)確反映數(shù)據(jù)是否更新過(guò)。但它不能查明其它用戶是否曾刪除過(guò)數(shù)據(jù)行(刪除掉的數(shù)據(jù)行在recordset中會(huì)留下空洞)。鍵盤(pán)驅(qū)動(dòng)的游標(biāo)支持在結(jié)果間前后滾動(dòng)。ConstadOpenStatic=3動(dòng)態(tài)游標(biāo),是最豐富的游標(biāo)類(lèi)型。游標(biāo)打開(kāi)時(shí)可以查詢其他用戶對(duì)表的任何改動(dòng),而且支持滾動(dòng)。,LockType加鎖類(lèi)型:ConstadLockReadOnly=1缺省的上鎖類(lèi)型,只讀方式上鎖允許多個(gè)用戶同時(shí)讀取同樣的數(shù)據(jù),但不能改變數(shù)據(jù)。ConstadLockPessimistic=2以悲觀上鎖方式打開(kāi)數(shù)據(jù)對(duì)象。該方式假定在你編輯記錄時(shí)會(huì)有其它用戶訪問(wèn)數(shù)據(jù)。此時(shí)一旦你開(kāi)始編輯記錄,其它用戶就不能訪問(wèn)該數(shù)據(jù)。ConstadLockOptimistic=3以樂(lè)觀上鎖方式打開(kāi)數(shù)據(jù)對(duì)象。該方式假定在你編輯記錄時(shí)不會(huì)有其它用戶訪問(wèn)數(shù)據(jù)。在完成改變之前,其它用戶不能訪問(wèn)該記錄。ConstadLockBatchOptimistic=4執(zhí)行多行批處理更新時(shí)使用這種類(lèi)型Options參數(shù):Options參數(shù)標(biāo)明用來(lái)打開(kāi)記錄集的命令字符串的類(lèi)型。告訴ADO被執(zhí)行的字符串內(nèi)容的有關(guān)信息有助于高效地執(zhí)行該命令字符串。adCMDTable。被執(zhí)行的字符串包含一個(gè)表的名字。adCMDText。被執(zhí)行的字符串包含一個(gè)命令文本。adCMDStoredProc。被執(zhí)行的字符串包含一個(gè)存儲(chǔ)過(guò)程名。adCMDUnknown。不指定字符串的內(nèi)容。(這是缺省值。),RS.OPENSQL,CONN,A,BA:ADOPENFORWARDONLY(=0)只讀,且當(dāng)前數(shù)據(jù)記錄只能向下移動(dòng)ADOPENSTATIC(=3)只讀,當(dāng)前數(shù)據(jù)記錄可自由移動(dòng)ADOPENKEYSET(=1)可讀寫(xiě),當(dāng)前數(shù)據(jù)記錄可自由移動(dòng)ADOPENDYNAMIC(=2)可讀寫(xiě),當(dāng)前數(shù)據(jù)記錄可自由移動(dòng),可看到新增記錄B:ADLOCKREADONLY(=1)默認(rèn)值,用來(lái)打開(kāi)只讀記錄ADLOCKPESSIMISTIC(=2)悲觀鎖定ADLOCKOPTIMISTIC(=3)樂(lè)觀鎖定ADLOCKBATCHOPTIMISTIC(=4)批次樂(lè)觀鎖定,司機(jī)檔案查詢,運(yùn)輸行業(yè)管理系統(tǒng),司機(jī)檔案查詢模塊,查詢按鈕PrivateSubCmdQue_Click()DimQuestrAsStringDimRsQueryAsNewADODB.RecordsetDimDriverNameAsStringDimRemarkAsStringDimLtItmAsListItemDimiAsInteger按姓名查詢IfMe.OptQue(0).Value=TrueThen判斷查詢條件IfMe.TxtQueName.Text=""ThenMsgBox"請(qǐng)輸入要查詢的司機(jī)姓名!",,"查詢司機(jī)檔案"ExitSubElseIfLen(Trim(Me.TxtQueName.Text))>4ThenMsgBox"司機(jī)姓名長(zhǎng)度超出范圍!",,"查詢司機(jī)檔案"ExitSubEndIf替換單引號(hào)DriverName=Replace(Trim(Me.TxtQueName.Text),"","")生成查詢語(yǔ)句Questr="select*fromDriverInfowhereDriverNameLike%"&DriverName&"%",PrivateSubForm_Load()…LvResult.Visible=FalseEndSub,按身份證號(hào)查詢ElseIfMe.OptQue(1).Value=TrueThen判斷查詢條件IfMe.TxtQueNum.Text=""ThenMsgBox"請(qǐng)輸入要查詢的身份證號(hào)!",,"查詢司機(jī)檔案"ExitSubElseIfLen(Trim(Me.TxtQueNum.Text))>18ThenMsgBox"身份證號(hào)長(zhǎng)度不符!",,"查詢司機(jī)檔案"ExitSubEndIf生成查詢語(yǔ)句Questr="select*fromDriverInfowhereDriverNumLike%"Questr=Questr&Me.TxtQueNum.Text&"%"按性別查詢ElseIfMe.OptQue(2).Value=TrueThen生成查詢語(yǔ)句IfMe.OptQueSex(0).Value=TrueThenQuestr="select*fromDriverInfowhereDriverSex=0"ElseQuestr="select*fromDriverInfowhereDriverSex=-1"EndIf按工號(hào)查詢ElseIfMe.OptQue(3).Value=TrueThenQuestr="select*fromDriverInfowhereDriverWorkNum="Questr=Questr&Val(Me.TxtQueWorkNum.Text),按備注查詢ElseIfMe.OptQue(4).Value=TrueThen替換單引號(hào)Remark=Replace(Trim(Me.TxtQueRemark.Text),"","")生成查詢語(yǔ)句Questr="select*fromDriverInfowhereRemarkLike%"Questr=Questr&Remark&"%"EndIf,打開(kāi)數(shù)據(jù)集Debug.PrintQuestrRsQuery.OpenQuestr,DBCn,adOpenStatic,adLockOptimistic顯示查詢結(jié)果IfRsQuery.EOFThenMsgBox"數(shù)據(jù)庫(kù)中沒(méi)有符合要求的記錄!",,"查詢司機(jī)檔案"ExitSubEndIfMe.LvResult.Visible=TrueMe.CmdBack.Visible=True,清空列表Me.LvResult.ListItems.Clear數(shù)據(jù)集指針指向第一個(gè)記錄RsQuery.MoveFirstFori=1ToRsQuery.RecordCountSetLtItm=Me.LvResult.ListItems.Add()LtItm.Text=RsQuery.Fields("DriverID").ValueLtItm.SubItems(1)=RsQuery.Fields("DriverName").ValueLtItm.SubItems(2)=RsQuery.Fields("DriverNum").ValueIfRsQuery.Fields("DriverSex").Value=0ThenLtItm.SubItems(3)="男"ElseLtItm.SubItems(3)="女"EndIfLtItm.SubItems(4)=RsQuery.Fields("DriverBir").ValueLtItm.SubItems(5)=RsQuery.Fields("DriverWorkNum").ValueLtItm.SubItems(6)=RsQuery.Fields("DriverTel").ValueLtItm.SubItems(7)=RsQuery.Fields("DriverTeam").ValueLtItm.SubItems(8)=RsQuery.Fields("DriverLicenceNum").ValueLtItm.SubItems(9)=RsQuery.Fields("DriverLicenceDate").ValueIfRsQuery.Fields("Remark").Value""ThenLtItm.SubItems(10)=RsQuery.Fields("Remark").ValueEndIf數(shù)據(jù)集指針指向下一條記錄RsQuery.MoveNextNexti關(guān)閉數(shù)據(jù)集RsQuery.CloseEndSub,運(yùn)輸行業(yè)管理系統(tǒng),車(chē)輛檔案管理模塊,FormCarBorderStype1MDIChildTRUETxtCarNum:車(chē)號(hào)TxtTeam、:隸屬車(chē)隊(duì)DTPBuy:購(gòu)買(mǎi)日期TxtRemark:備注OptCheck(0):是否年檢是OptCheck(1):是否年檢否OptIns(0):是否車(chē)險(xiǎn)是OptIns(1):是否車(chē)險(xiǎn)否DataGrid1:Adodc1:OptQue(0):按車(chē)號(hào)查詢OptQue(1):按是否年檢查詢OptQue(2):按是否車(chē)險(xiǎn)查詢OptQue(3):按備注查詢OptQueCheck(0):是否車(chē)險(xiǎn)是OptQueCheck(1):是否車(chē)險(xiǎn)否OptQueIns(0):是否年檢是OptQueIns(0):是否年檢否LvResult:,車(chē)輛檔案管理窗體控件,,運(yùn)輸行業(yè)管理系統(tǒng),車(chē)輛檔案管理模塊,PrivateSubForm_Load()初始化ADO控件,連接數(shù)據(jù)庫(kù),設(shè)置列首Adodc1.ConnectionString=CnStrAdodc1.RecordSource="SelectCarIDas車(chē)輛ID,"&_"CarNumas車(chē)號(hào),"&_"CarTeamas隸屬車(chē)隊(duì)名,"&_"CarDateas購(gòu)買(mǎi)日期,"&_"CarCheckas年檢,"&_"CarInsas車(chē)險(xiǎn),"&_"Remarkas備注"&_"FromCarInfo"Debug.PrintAdodc1.RecordSourceSetDataGrid1.DataSource=Adodc1不能缺少M(fèi)e.LvResult.Visible=FalseEndSub,運(yùn)輸行業(yè)管理系統(tǒng),車(chē)輛檔案管理模塊,備注項(xiàng)可選IfMe.TxtRemark.Text=vbNullStringThen沒(méi)有備注項(xiàng)SqlStr="INSERTINTOCarInfo"SqlStr=SqlStr"Debug.PrintSqlStrDBCn.ExecuteSqlStr,Else有備注項(xiàng)Remark=Replace(Trim(Me.TxtRemark.Text),"","")SqlStr="INSERTINTOCarInfo"SqlStr=SqlStr"Debug.PrintSqlStrDBCn.ExecuteSqlStrEndIfMsgBox"添加成功",,"添加車(chē)輛檔案"Adodc1.Refresh,PrivateSubCmdMod_Click()DataGrid1.Columns(1).Text=Me.TxtCarNum.TextDataGrid1.Columns(2).Text=Me.TxtTeam.TextDataGrid1.Columns(3).Text=Me.DTPBuy.ValueIfMe.OptCheck(0).Value=TrueThenDataGrid1.Columns(4).Text=0ElseDataGrid1.Columns(4).Text=-1EndIfIfMe.OptIns(0).Value=TrueThenDataGrid1.Columns(5).Text=0ElseDataGrid1.Columns(5).Text=-1EndIfDataGrid1.Columns(6).Text=Me.TxtRemark.TextMsgBox"修改成功",,"修改車(chē)輛檔案"EndSub,修改車(chē)輛檔案,運(yùn)輸行業(yè)管理系統(tǒng),PrivateSubCmdDel_Click()OnErrorGoToErr:IfMsgBox("確定要?jiǎng)h除選定檔案嗎?",vbOKCancel,"刪除檔案")=vbOKThenAdodc1.Recordset.DeleteMsgBox"刪除成功!",,"刪除檔案"CmdEmpty_ClickEndIfExitSubErr:MsgBox"其他表中包含相關(guān)記錄,不能刪除!",,"刪除檔案"EndSub,刪除車(chē)輛檔案,運(yùn)輸行業(yè)管理系統(tǒng),每日結(jié)算模塊,運(yùn)輸行業(yè)管理系統(tǒng),控件即屬性見(jiàn)書(shū)P47表1-13,計(jì)算盈利:昨日收入(車(chē)輛運(yùn)營(yíng))-昨日支出(違章罰款+維修費(fèi)用+事故花費(fèi)),- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 運(yùn)輸行業(yè)管理系統(tǒng) 運(yùn)輸 行業(yè)管理 系統(tǒng) PPT 課件
鏈接地址:http://m.appdesigncorp.com/p-11513141.html