實驗圖書管理系統(tǒng)_第1頁
實驗圖書管理系統(tǒng)_第2頁
實驗圖書管理系統(tǒng)_第3頁
實驗圖書管理系統(tǒng)_第4頁
實驗圖書管理系統(tǒng)_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗 圖書管理系統(tǒng)一 實驗目的(1)培養(yǎng)綜合應用PowerBuilder進行應用程序設計和解決實際問題的能力;(2)加深對PowerBuilder編程環(huán)境和編程方法的理解;(3)發(fā)揮各人的想像能力和分析能力,拓展思維空間;(4)掌握應用程序設計的基本方法;(5)鞏固已經(jīng)學到的編程技術,學會在編程中學習編程。二 實驗要求(1)圖書信息的錄入和刪除,出版社信息管理等;(2)圖書的檢索(包括按作者姓名、出版時間、出版社名稱、圖書類別、書名、關鍵宇等);(3)圖書的租借(包括借書登記、限借數(shù)量控制、還書登記、過期罰款計算等);(4)借書證件的管理(包括辦新證件,掛失、注銷等)(5)系統(tǒng)設置(主要是不同

2、類型證件的可借書的總量和借書時間等) 三 實驗內(nèi)容詳細步驟:數(shù)據(jù)庫的設計:創(chuàng)建數(shù)據(jù)庫,數(shù)據(jù)庫名user,在數(shù)據(jù)庫里建表1表4,表1 Bookinfo為存放圖書信息表,表2 certificateinfo證件表為證件表,表3 LOAN 圖書租借表,表4 SET系統(tǒng)設置表,表如下:表1 Bookinfo字段名意義數(shù)據(jù)類型寬度NullPrimaryKeyBookID圖書編號Char8NoISBNISBN書號Char30YseTitle書名Char40YsePublish出版日期CharYseAuthor作者Char30YseWords字數(shù)(千字)IntegerYsePublisherID出版社IDC

3、har4YseNumber印刷冊數(shù)CharYsePrice定價MoneyYseKeyword關鍵字Char30YseAbstract摘要Varchar400Yse表2 certificateinfo字段名意義數(shù)據(jù)類型寬度NullPrimaryKeyCert_id借書證書IDChar5NoCert_name證件名稱Char10YesCert_value證件號碼Char18YesName姓名Char8YesDepart所在部門Char20Yesflag標記TinyintYes表3 LOAN表4 SET1創(chuàng)建菜單創(chuàng)建一個菜單,菜單名為caidan,所有窗口在菜單中實現(xiàn)。2創(chuàng)建窗口對象登陸界面(1)主

4、界面:創(chuàng)建一個新的彈出式窗口對象,Title為“圖書管理系統(tǒng)”關聯(lián)菜單“caidan”界面如下:(2)圖書管理:a.新書錄入界面:創(chuàng)建一個新的彈出式窗口對象, (1)布置窗口中的靜態(tài)文本控件窗口中只有一個標題使用靜態(tài)文本控件,在窗口控件下拉列表工具欄圖標中選擇靜態(tài)文 本控件,然后在窗口上單擊,生成靜態(tài)文本控件。在Text屬性欄中輸入“新書錄入”。 (2)布置窗口中的單行編輯框控件 在窗口控件下拉列表工具欄圖標中選擇單行編輯框控件,然后在窗口上單擊,生成單行編輯框控件。使用 Ctrl和 T組合鍵進行外觀復制生成 5個單行編輯框。 單行編輯框的名稱控件名稱說明字段Sle_bookid圖書編號Sle

5、_isbnISBN書號Sle_publish書名Sle_author作者Sle_words字數(shù)Sle_publisberid出版社IDSle_number印刷冊數(shù)Sle_price定價Sle_keyword關鍵字Sle_abstract摘要(3)布置窗口中的多行編輯框控件在窗口控件下拉列表工具欄圖標中選擇多行編輯框控件,然后在窗口上單擊,生成多行編輯框控件。其名稱Name為“dw_abstract”,選中Hscrollbar和Vscrollbar。多行編輯框控件用于輸入摘要。 (4)布置窗口中的“確定”按鈕控件在窗口控件下拉列表工具欄圖標中選擇命令按鈕控件,然后在窗口上單擊,生成命令按鈕控件。

6、窗口中共有兩個命令按鈕控件,設置一個按鈕的Text屬性為“確定”,名稱為cb_ok選中 default屬性?!按_定”按鈕的Clicked事件腳本為;string str_BookId,str_ISBN,str_Title,str_Author,str_PublisherID,str_Keyword,str_Abstractlong I_Words,I_price,i,I_Number,Flag1date str_Publishif sle_bookid.text=then return messagebox(缺少數(shù)據(jù),請輸入圖書編號) str_BookId=trim(sle_bookid.te

7、xt) str_ISBN=trim(sle_isbn.text)str_Title=trim(sle_title.text)str_Publish=date(sle_publish.text)str_Author=trim(sle_author.text)str_PublisherID=trim(sle_publisherid.text)I_Number=long(sle_number.text)str_Keyword=trim(sle_keyword.text)str_Abstract=trim(mle_abstract.text)I_Words=long(sle_words.text)I_

8、Price=long(sle_price.text)Flag1=0 select BookID into :i from BookInfo where BookID=:str_BookId; if i0 then messagebox(書號重復,書號重復,請重新輸入!) INSERT INTO BookInfo (BookID, ISBN, Title, Publish, Author, Words, PublisherID, Number, Keyword, Abstract, Price, Flag) VALUES (: str_BookId, : str_ISBN, : str_Titl

9、e, : str_Publish, : str_Author, : I_Words, : str_PublisherID, : I_Number, : str_Keyword, : str_Abstract, : I_Price, : Flag1); sle_bookid.text=sle_isbn.text=sle_title.text=sle_publish.text=sle_author.text=sle_publisherid.text=sle_number.text=sle_publisherid.text=sle_keyword.text=mle_abstract.text=sle

10、_words.text=sle_price.text= sle_bookid.setfocus()(3)關聯(lián)新書錄入窗口 m到菜單中打開創(chuàng)建主菜單選擇新書錄入菜單,添加事件的腳本為:open(m) (4)具體界面如下: b.舊書銷毀界面:創(chuàng)建一個新的彈出式窗口對象 (1)布置窗口中的靜態(tài)文本控件窗口中只有一個標題使用靜態(tài)文本控件,在窗口控件下拉列表工具欄圖標中選擇靜態(tài)文 本控件,然后在窗口上單擊,生成靜態(tài)文本控件。在Text屬性欄中輸入“舊書銷毀”。 (2) 按書號檢索 按書號查詢的數(shù)據(jù)窗口對象是一個條件查詢的數(shù)據(jù)窗口,其設計步驟為: l)單擊New圖標按鈕,彈出“New”對話框;2)選擇Da

11、taWindow選項頁,雙擊FreeForm圖標,彈出“Choose Data Source for FreeForm DataWindow”對話框; 3)選擇“SQL Select”數(shù)據(jù)源方式,單擊“Next”按鈕,彈出“Select Table”對話框;4)在 Table列表框中選擇 student表,單擊“Open”按鈕,這時彈出 Select 畫板;5)單擊菜單DesignRetrieval Arguments彈出Specify Retrieval Arguments”對話框,在 Name欄中輸入ls_name,在Type下拉列表框中選擇 String,單擊“OK”按鈕,對話框關閉:

12、6)在 Select畫板的 Table Layout子窗口中的表框中列出了 student表的全部字段的名稱,每單擊一個字段,該字段就變?yōu)樗{底白字,表示選中,同時,會在上面的“Selection List:”區(qū)域中排列出該宇段。如果單擊選中的字段,就會變?yōu)椴槐贿x中,該字段從上面的排列中消失。單擊每一個字段,將全部字段選中;7)在 Select畫板的 Where子窗口中單擊 Colunm欄,右邊出現(xiàn)一個“”符號,單擊“”按鈕,彈出student表的所有字段,選擇“student”.“name”,在右邊的Value欄中,單擊右鍵,選擇彈出菜單中的“Arguments.”,彈出一個小窗口,內(nèi)部有剛才

13、定義的變量“:Is_name”,單擊選中它,單擊“Paste”按鈕,“:ls_name”就出現(xiàn)在Value欄中。 8)單擊“Return”圖標按鈕,彈出“Select Colorl Border Settings”對話樞,單擊“Next”按鈕,彈出“Ready to Create FreeForm DataWindow”對話框。,該對話框對數(shù)據(jù)窗口對象的主要屬性進行了小結。單擊“Finish”按鈕,彈出“Specify Retrieval Arguments”對話框,要求對檢索變量ls_name進行賦值,以便對數(shù)據(jù)庫進行數(shù)據(jù)檢索,并將檢索結果放到Preview子窗口中??梢栽赩alue欄中輸人

14、一個姓名后按“OK”鍵進行檢索,也可以按“Cancel”鍵不進行檢索,然后進入數(shù)據(jù)窗口對象畫板。 9)在數(shù)據(jù)窗口對象畫板中,將字段名稱改為中文,調(diào)整字段的位置和大小,設置文字顏色、背景顏色和字段邊框; 10)選擇菜單EditSelectSelect Colunms,將所有字段全部選中,然后在Properties屬性卡中選擇 Edit頁,選中“Display Only”復選框,不選中“Auto Selection”復選框;11)保存數(shù)據(jù)窗口對象名稱為 d1。(4) 編寫腳本:在“查詢”按鈕的Clicked事件腳本為;string str_bookidstr_bookid=trim(sle_boo

15、kid.text)if not str_bookid= then dw_bookid.retrieve(str_bookid) else MessageBOX(數(shù)據(jù)不全,請輸入待刪除的書名。) end if sle_bookid.setFocus()在“確定銷毀”按鈕的Clicked事件腳本為;string str_bookidlong istr_bookid=trim(sle_bookid.text)delete from BookInfowhere BookID=:str_bookid;dw_bookid.retrieve(str_bookid)select BookIDinto :ifr

16、om BookInfowhere BookID=:str_bookid;if i=0 then messagebox(提示,string(str_bookid)+的信息已經(jīng)不存在)sle_bookid.text= (5)關聯(lián)新書錄入窗口 n到菜單中打開創(chuàng)建主菜單選擇舊書銷毀菜單中,添加事件的腳本為:open(n)(6)具體界面如下:(4)圖書查詢:圖書查詢包括兩個查詢:按書名查詢,按日期查詢。(這里只寫按書名查詢詳細步驟,按日期查詢和按書名查詢功能一樣,略之)1) 設計步驟如下:創(chuàng)建一個新的彈出式窗口對象。數(shù)據(jù)窗口對象選擇Grid風格。增加一個檢索參數(shù) Retrieval Argument為

17、ls_author,在 Select畫板的 Where子窗口中設計的條件為: bookinfo.authorlike:ls_author 保存數(shù)據(jù)窗口對象 (2)布置一個靜態(tài)文本控件,其Text為“按書名查詢”,一個單行編輯框,為Name 為“sle_author ”;一個命令按鈕, Text屬性為“查詢”,選中“Default”復選框;還有一個數(shù)據(jù)窗口控件,其Name為dw_author”;DataObject為d5,選中HScrollBar和VScrollBar復選框。保存所做的工作。 (3)編寫腳本:在“確定”按鈕的Clicked事件腳本為;string str_titlestr_tit

18、le=trim(sle_title.text)if not str_title= then dw_title.retrieve(str_title) else MessageBOX(數(shù)據(jù)不全,請輸入書名(可以不全)!) end if sle_title.setFocus()在a窗口的Open事件中,再增加數(shù)據(jù)窗口 dwauthor使用數(shù)據(jù)庫的事物對象和初始化的代碼: dw_author.SetTransObject(SQLCA)(4)關聯(lián)新書錄入窗口m到菜單中打開創(chuàng)建主菜單選擇按作者查詢菜單,添加事件的腳本為:open(a)兩個界面如下: 按書名查詢按日期查詢 (5)證件管理: a. 辦新證件

19、創(chuàng)建一個新的彈出式窗口對象,窗口名“student”。 (1)布置窗口中的靜態(tài)文本控件窗口中只有一個標題使用靜態(tài)文本控件,在窗口控件下拉列表工具欄圖標中選擇靜態(tài)文 本控件,然后在窗口上單擊,生成靜態(tài)文本控件。在Text屬性欄中輸入“辦新證件”。 2)布置窗口中的單行編輯框控件 在窗口控件下拉列表工具欄圖標中選擇單行編輯框控件,然 后在窗口上單擊,生成單行編輯框控件。使用 Ctrl和 T組合鍵進行外觀復制生成 5個單行編輯框。 單行編輯框的名稱控件名稱說明字段Sle_cert_id借書證IDSle_cert_value證件號碼Sle_departy所在部門(3)布置窗口中的單選鈕和組合框控件 窗

20、口中共有兩組單選鈕,一組為性別選擇,另一組為黨團員選擇。性別選擇單選鈕的設計方法為:在窗口控件下拉列表工具欄圖標中選擇組合框控件,然后在窗口上單擊,生成組合框控件、再選擇單選鈕控件,在組合框中單擊,生成單選鈕控件。設置其名稱為rb_zero,Text為“0”,選中Checked屬性;同樣再在組合框中放置一個單選鈕控件,設置其名稱為rb_first,Text為“1”,不選中Checked屬性;rb_two,Text為“2”,不選中Checked屬性。(說明:標記中的0是合法用戶能借閱書籍,1是該證已掛失,2是該用戶已經(jīng)在黑名單里。) (4)布置窗口中的下拉列表框控件在窗口控件下拉列表工具欄圖標中

21、選擇下拉列表框控件,然后在窗口上單擊,生成下拉列表框控件。輸入下拉列表框控件名稱為ddlb_cert_name,不選中Sorted屬性,選中Vscrollbar屬性。單擊下拉列表框控件后拖動下邊框,調(diào)整下拉列表框展開后的長度。同樣輸入下拉列表框控件名稱為ddlb_departy,不選中Sorted屬性,選中Vscrollbar屬性。單擊下拉列表框控件后拖動下邊框。 (5)布置窗口中的命令按鈕控件在窗口控件下拉列表工具欄圖標中選擇命令按鈕控件,然后在窗口上單擊,生成命令按鈕控件。窗口中共有兩個命令按鈕控件,設置一個按鈕的Text屬性為“提交”,名稱為cb_ok選中 default屬性;設置一個按

22、鈕的 Text屬件為“退出”,名稱為 cb_exit,選中 Cancel屬性。(6)編寫腳本:單擊選中證件名稱下拉列表框控件,選擇右鍵彈出菜單中的Script菜單項,進人SCript子窗口,選擇事件下拉列表框中的Constructor事件,輸人以下腳本:this.additem(教師) this.additem(學生) 同時在所在部門下拉列表框控件,選擇右鍵彈出菜單中的Script菜單項,進人SCript子窗口,選擇事件下拉列表框中的Constructor事件,輸人以下腳本: this.additem(計算機科學系)this.additem(英語系) this.additem(工商管理系)th

23、is.additem(經(jīng)濟系) this.additem(信息管理系)this.additem(藝術系)this.additem(機械系)this.additem(建筑系)在“確定”按鈕的Clicked事件腳本為;string ID,depart,name,Cname,Cvalue,Ctype,flagint iID=trim(sle_cert_id.text)select Cert_id into : i from CertificateInfo where Cert_id=: ID;if i0 then messagebox(重復,借書證ID重復,請重新輸入!)sle_cert_id.te

24、xt=sle_cert_id.setfocus()returnend ifif sle_cert_id.text=then messagebox(缺少數(shù)據(jù),請輸入借書證ID) sle_cert_id.setfocus() return elseif sle_name.text=then messagebox(缺少數(shù)據(jù),請輸入姓名)sle_name.setfocus()returnend ifif sle_cert_value.text= thenmessagebox(缺少數(shù)據(jù),請輸入證件號)return elseif sle_depart.text= thenmessagebox(缺少數(shù)據(jù),請

25、輸入系別或部門) return end ifif ddlb_cert_type.text= then messagebox(缺少數(shù)據(jù),請選擇借書證類型)returnelseif ddlb_cert_name.text=then messagebox(缺少數(shù)據(jù),請輸入證件名稱)returnend ifname=trim(sle_name.text)Cvalue=trim(sle_cert_value.text)Cname=trim(ddlb_cert_name.text)depart=trim(sle_depart.text)Ctype=trim(ddlb_cert_type.text)flag

26、=0;insert into CertificateInfo(Cert_id, Name, Cert_name, Cert_value, Depart, Cert_type, flag)values(:ID, :name, :Cname, :Cvalue, :depart, :Ctype, :flag);sle_cert_id.text=sle_name.text=ddlb_cert_name.text=sle_cert_value.text=sle_depart.text=ddlb_cert_type.text=sle_cert_id.setfocus()在“退出”按鈕的Clicked事件腳

27、本為;close(book_jszzhuce)(7)關聯(lián)新書錄入窗口student到菜單中打開創(chuàng)建主菜單到辦新證件菜單中,添加事件的腳本為:open(student)(8)具體界面如下:b. 證件管理創(chuàng)建一個新的彈出式窗口對象,窗口名“l(fā)ose”。設計步驟如下:1)首先按借書證ID進行檢索,顯示出這個人的證件信息,之后設置四個按鈕:確定、掛失、解鎖、銷毀,之后在每個按鈕里輸入腳本。2)編寫腳本:在“確定”按鈕的Clicked事件腳本為;string IDID=trim(sle_ID.text)if not sle_ID.text= thendw_ID.retrieve(ID)else mess

28、agebox(錯誤,請輸入借書證號)end if在“掛失”按鈕的Clicked事件腳本為;string IDlong iID=trim(sle_ID.text)update CertificateInfoset flag=1where Cert_id=:ID;if not sle_ID.text= thendw_ID.retrieve(ID)elsemessagebox(錯誤,請輸入借書證ID)end if在“解鎖”按鈕的Clicked事件腳本為;string IDlong iID=trim(sle_ID.text)update CertificateInfoset flag=0where C

29、ert_id=:ID;if not sle_ID.text= thendw_ID.retrieve(ID)elsemessagebox(錯誤,請輸入借書證ID)end if在“銷毀”按鈕的Clicked事件腳本為;string IDlong iID=trim(sle_ID.text)delete from CertificateInfowhere Cert_id=:ID;if not sle_ID.text= thendw_ID.retrieve(ID)elsemessagebox(錯誤,請輸入借書證ID)end if在lose窗口的Open事件中,再增加數(shù)據(jù)窗口 dwcert_id使用數(shù)據(jù)庫

30、的事物對象和初始化的代碼: dw_cert_id.SetTransObject(SQLCA)(3)關聯(lián)新書錄入窗口lose到菜單中打開創(chuàng)建主菜單到證件掛失菜單中,添加事件的腳本為:open(lose)(4) 具體界面如下: c. 借書證注銷創(chuàng)建一個新的彈出式窗口對象設計步驟如下:1)首先按借書證ID進行檢索,顯示出這個人的證件信息,之后設置兩個按鈕:確定,退出,之后在每個按鈕里輸入腳本。2)編寫腳本:在“確定”按鈕的Clicked事件腳本為;string ID,depart,name,Cname,Cvalue,Ctype,flagint iID=trim(sle_cert_id.text)se

31、lect Cert_id into : i from CertificateInfo where Cert_id=: ID;if i0 then messagebox(重復,借書證ID重復,請重新輸入!)sle_cert_id.text=sle_cert_id.setfocus()returnend ifif sle_cert_id.text=then messagebox(缺少數(shù)據(jù),請輸入借書證ID) sle_cert_id.setfocus() return elseif sle_name.text=then messagebox(缺少數(shù)據(jù),請輸入姓名)sle_name.setfocus(

32、)returnend ifif sle_cert_value.text= thenmessagebox(缺少數(shù)據(jù),請輸入證件號)return elseif sle_depart.text= thenmessagebox(缺少數(shù)據(jù),請輸入系別或部門) return end ifif ddlb_cert_type.text= then messagebox(缺少數(shù)據(jù),請選擇借書證類型)returnelseif ddlb_cert_name.text=then messagebox(缺少數(shù)據(jù),請輸入證件名稱)returnend ifname=trim(sle_name.text)Cvalue=tri

33、m(sle_cert_value.text)Cname=trim(ddlb_cert_name.text)depart=trim(sle_depart.text)Ctype=trim(ddlb_cert_type.text)flag=0;insert into CertificateInfo(Cert_id, Name, Cert_name, Cert_value, Depart, Cert_type, flag)values(:ID, :name, :Cname, :Cvalue, :depart, :Ctype, :flag);sle_cert_id.text=sle_name.text=

34、ddlb_cert_name.text=sle_cert_value.text=sle_depart.text=ddlb_cert_type.text=sle_cert_id.setfocus()在“退出”按鈕的Clicked事件腳本為;close(book_jszzhuce)在del窗口的Open事件中,再增加數(shù)據(jù)窗口 dwcert_id使用數(shù)據(jù)庫的事物對象和初始化的代碼: dw_cert_id.SetTransObject(SQLCA)3)關聯(lián)新書錄入窗口del到菜單中打開創(chuàng)建主菜單到證件注銷菜單中,添加事件的腳本為:open(del)4)具體界面:6)證件租借:a.借書登記:創(chuàng)建一個新的

35、彈出式窗口對象,窗口名“bollow”。設計步驟如下:1) 首先根據(jù)借書證ID驗證借書者是否存在,還是已經(jīng)掛失,或在黑名單里,如果存在,點擊驗證按鈕將會在借書人的姓名里,顯示出該人的姓名,如果不存在將出來對話框顯示不存在該信息或掛失或黑名單。2) 根據(jù)圖書編號檢索要借的書的全部信息,同時顯示出該借書證ID所借的書數(shù)量,之后方可借書。3) 編寫腳本:在“查詢借書情況”按鈕的Clicked事件腳本為;string certidcertid=trim(sle_certid.text)if sle_certid.text= thenmessagebox(缺少數(shù)據(jù),請輸入借書證號)sle_certid.

36、setfocus()returnend ifdw_jieshu.retrieve(certid) 在“借書”按鈕的Clicked事件腳本為;string certid,bookidint Flag,i,j,m,ni=2j=2datetime ld_loandates,ld_returndatesld_loandates=datetime(today(),now()ld_returndates=datetime(relativedate(today(),30)certid=trim(sle_certid.text)bookid=trim(sle_bookid.text)Flag=1if sle_

37、certid.text= thenmessagebox(缺少數(shù)據(jù),請輸入借書證號)sle_certid.setfocus()returnelseif sle_bookid.text= thenmessagebox(缺少數(shù)據(jù),請輸入圖書編號)sle_bookid.setfocus()returnend ifselect flaginto :ifrom CertificateInfowhere Cert_id=:certid;if i=1 then messagebox(警告,該借書證已經(jīng)掛失,暫時無法使用!)returnelseif i=2 then messagebox(無效,沒有該借書證信息

38、!) returnend ifselect flaginto :jfrom BookInfowhere BookID=:bookid;if j=1 then messagebox(警告,該書已經(jīng)被借出!)returnelseif j=2 then messagebox(無效,沒有該圖書編號信息!) returnend ifselect count(BookID)into :mfrom Loanwhere Cert_id=:certid and flag=1;select Set.Numberinto :nfrom Set,CertificateInfowhere CertificateInfo

39、.Cert_id=:certid and CertificateInfo.Cert_type=Set.Cert_type;if m=n thenmessagebox(提示,超出了借書總數(shù))returnend ifinsert into Loan(BookID, Cert_id, Loandates, Returndates, flag)values(:bookid, :certid, :ld_loandates, :ld_returndates, :Flag);update BookInfoset flag=1where BookID=:bookid;sle_certid.text=sle_b

40、ookid.text=dw_jieshu.retrieve(certid)messagebox(警告,借書成功)在bollow窗口的Open事件中,再增加數(shù)據(jù)窗口 dwcert_id使用數(shù)據(jù)庫的事物對象和初始化的代碼: dw_cert_id.SetTransObject(SQLCA)4)關聯(lián)新書錄入窗口bollow到菜單中打開創(chuàng)建主菜單到借書登記菜單中,添加事件的腳本為:open(bollow)5)具體界面:b.還書:創(chuàng)建一個新的彈出式窗口對象,窗口名“l(fā)ed”。設計步驟如下:1)根據(jù)圖書編號驗證是否存在該圖書,如果存在光標移到圖書名稱的時候將顯示圖書名稱,如果沒有該圖書信息將出來對話框顯示沒

41、有該圖書信息。2)根據(jù)圖書編號檢索出該圖書被借出情況,并顯示該借書證ID所借出的數(shù)量和是否罰款3)編寫腳本:在“還書”按鈕的Clicked事件腳本為;string bookiddatetime Rtime,timesdouble i,j,mm=2Rtime=datetime(today(),now()if sle_bookid.text= thenmessagebox(缺少數(shù)據(jù),請輸入圖書編號)sle_bookid.setfocus()returnend ifbookid=trim(sle_bookid.text)select Flaginto :mfrom BookInfowhere BookID=:bookid;if m=0 then messagebox(提示,該書已經(jīng)歸還)returnelseif m=2 thenmessagebox(提示,不存在該借書信息)returnend ifselect Returndatesinto :timesfrom Loanwhere BookID=:bookid;i=daysafter(date(Rtime),date(times)if i0 then messagebox(提示,超過借書時限,應該罰款) returnend ifupdate Loans

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論