版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、.圖書管理系統(tǒng)設(shè)計說明書編寫:校對:審核:.目錄1引言 .32程序系統(tǒng)的結(jié)構(gòu) . .33程序(標識符)設(shè)計說明 . .44還書模塊 .95圖書查詢模塊 .136系統(tǒng)操作模塊 .16參考資料 .37.1 引言1. 1 目的根據(jù)需求規(guī)格說明書 、概要設(shè)計說明書 ,在仔細考慮討論之后,我們對圖書管理系統(tǒng)軟件的功能劃分、數(shù)據(jù)結(jié)構(gòu)、軟件總體結(jié)構(gòu)的實現(xiàn)有了進一步的想法。我們將這些想法記錄下來,作為詳細設(shè)計說明書,為進一步設(shè)計軟件、編寫代碼打下基礎(chǔ)。1.2 概述隨著社會信息量的與日俱增,作為信息存儲的主要媒體之一圖書,數(shù)量、規(guī)模比以往任何時候都大的多,不論個人還是圖書管理部門都需要使用方便而有效的方式來管理
2、自己的書籍。在計算機日益普及的今天, 對個人而言若采用一套行之有效的圖書管理系統(tǒng)來管理自己的書籍,會方便許多。對圖書管理部門而言,以前單一的手工檢索已不能滿足人們的要求,為了便于圖書資料的管理需要有效的圖書管理軟件。本圖書管理系統(tǒng)軟件是一套功能比較完善的數(shù)據(jù)管理軟件,具有數(shù)據(jù)操作方便高效迅速等優(yōu)點。該軟件采用功能強大的數(shù)據(jù)庫軟件開發(fā)工具進行開發(fā),具有很好的可移植性,可在應(yīng)用范圍較廣的 DOS、 WINDOWS系列等操作系統(tǒng)上使用1.3 定義文檔中采用的專門術(shù)語的定義及縮略詞簡要如下:LMS: Library Management System,圖書管理系統(tǒng)2 程序系統(tǒng)的結(jié)構(gòu)系 統(tǒng) 操 作 模
3、塊圖書查詢讀 者 查系統(tǒng)操作詢輸輸更改圖書庫讀者庫數(shù)據(jù)系統(tǒng)數(shù)據(jù)數(shù)據(jù)入出口令操作操作統(tǒng)計設(shè)置備份恢復(fù).3 程序(標識符)設(shè)計說明3.1 主模塊功能初始化建立與數(shù)據(jù)庫連接獲取系統(tǒng)設(shè)置運行主對話框根據(jù)輸入調(diào)用子模塊借還圖系退出系統(tǒng)時斷開與數(shù)據(jù)庫的連接書書書統(tǒng)輸入項目模模查查用戶鼠標點擊輸入塊塊詢詢模模程序邏輯塊塊見右圖存儲分配內(nèi)部數(shù)據(jù):數(shù)據(jù)庫連接m_pConnection_ConnectionPtr數(shù)據(jù)庫連接指針m_IsConnectedBOOL數(shù)據(jù)庫連接指示系統(tǒng)設(shè)置m_MaxLBNumint可借圖書數(shù)上限m_MaxLBDayint借書天數(shù)上限子對話框m_BookOutDlgCBookOutDlg借
4、書對話框m_BookInDlgCBookInDlg還書對話框m_BookQuiryDlgCBookQuiryDlg圖書查詢對話框m_SysDlgCSysDlg系統(tǒng)操作對話框測試要點數(shù)據(jù)庫連接情況:正常情況,數(shù)據(jù)庫文件缺少,外部系統(tǒng)異常。系統(tǒng)設(shè)置獲?。赫G闆r,外部系統(tǒng)異常。對用戶輸入的響應(yīng):合法輸入,能夠正常調(diào)用子模塊;非法輸入,系統(tǒng)能否辨別,并作出響應(yīng)( 提出警告 ) ;子模塊的異常狀況,系統(tǒng)能否及時做出響應(yīng)。3.2 借書模塊功能查驗輸入的讀者證號運行借書對話框獲取該讀者的相關(guān)信息查驗輸入的圖書號登記借書輸入項目讀者證號、圖書書號( 用戶輸入 )輸出項目讀者信息 ( 姓名 ) ;讀者已借圖書
5、信息 ( 書名、借書日期 ) ;程序邏輯.對話框初始化操作取消輸入讀者證號查 驗輸入不合理借書對話框點擊返回查驗出錯借書登記更新相關(guān)信息及顯示關(guān)閉對話框接口調(diào)用形式: void CBookDlg:LendBook(const _ConnectionPtr pConnection,const int MaxLBNum)傳入?yún)?shù): pConnection數(shù)據(jù)庫連接指針MaxLBNum 系統(tǒng)參數(shù) ( 可借圖書上限 )傳出參數(shù):無存儲分配內(nèi)部數(shù)據(jù):數(shù)據(jù)庫m_pConnection_ConnectionPtr數(shù)據(jù)庫連接指針用戶界面m_strReaderName CString讀者姓名m_strLBInf
6、CString已借圖書信息m_strLBNumCString已借圖書數(shù)顯示m_lBookIDlong欲借圖書書號內(nèi)部參數(shù)m_lReaderIDlong當前讀者證號m_MaxLBNumint可借圖書數(shù)上限測試要點模塊正常運行流程用戶輸入數(shù)據(jù)檢查 ( 讀者證號、圖書書號 ) ,包括數(shù)據(jù)合理性檢查,以及合法性檢查數(shù)據(jù)庫操作數(shù)據(jù)庫連接異常時的響應(yīng)情況.3.2.1讀者查驗?zāi)K功能查驗輸入的讀者證號是否合法( 即是否存在與該讀者證號對應(yīng)的讀者記錄)輸入項目讀者證號 ( 整型常數(shù) ) ,讀者姓名 ( 引用型字符串)輸出項目查驗結(jié)果 (BOOL值 )程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF 返回結(jié)果集
7、為空( 不存在該讀者證號)置讀者姓名字符串為空返回”非法讀者證號”ELSE置讀者姓名字符串返回”合法讀者證號”接口調(diào)用形式: BOOL CheckReader(const long ReaderID,CString &strReaderName)傳入?yún)?shù): ReaderID( 常量參數(shù)傳入 )待查驗的讀者證號m_pConnection(借書模塊內(nèi)的全局變量 )數(shù)據(jù)庫連接指針傳出參數(shù):讀者證號存在/ 不存在標志 ( 返回值 )strReaderName(傳入的引用參數(shù) ) 讀者證號對應(yīng)的讀者姓名( 讀者證號不存在時置為空 )存儲分配局部變量:數(shù)據(jù)庫pReader_RecordsetPtr數(shù)據(jù)庫查
8、詢結(jié)果集指針查詢參數(shù)vtQuiry_variant_t查詢命令vNull_variant_t查詢連接類型轉(zhuǎn)換strQuiryCstring查詢命令類型轉(zhuǎn)換vtemp_variant_t查詢結(jié)果類型轉(zhuǎn)換測試要點數(shù)據(jù)庫連接正常時輸入合理合法參數(shù)輸入?yún)?shù)不合理輸入?yún)?shù)不合法數(shù)據(jù)庫連接異常;數(shù)據(jù)庫數(shù)據(jù)異常( 讀者姓名為空)3.2.2圖書查驗?zāi)K功能查驗輸入的圖書書號是否合法輸入項目圖書書號 ( 整型常量 )輸出項目查驗結(jié)果 (BOOL值 )程序邏輯生成數(shù)據(jù)庫查詢語句.調(diào)用數(shù)據(jù)庫查詢模塊IF 返回結(jié)果集為空( 不存在該圖書書號)返回”非法圖書書號”ELSE返回”合法圖書書號”接口調(diào)用形式 :BOOL C
9、heckBook(const long BookID)傳入?yún)?shù) :BookID( 整型常量 )帶查驗的圖書書號傳出參數(shù) :書號合法 / 不合法標志 ( 返回值 )查驗結(jié)果存儲分配局部變量 :數(shù)據(jù)庫pBook_RecordsetPtr數(shù)據(jù)庫查詢結(jié)果集指針查詢參量vtQuiry_variant_t查詢字符串vNull_variant_t查詢連接參量類型轉(zhuǎn)換strQuiryCstring查詢命令類型轉(zhuǎn)換測試要點數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常輸入的書號合理合法輸入的書號不合理輸入的書號不合法數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常3.2.3相關(guān)信息獲取模塊功能獲取合法讀者的借書記錄輸入項目合法讀者證號( 整型常量
10、) ;讀者已借圖書信息( 引用型字符串 )輸出項目查詢操作結(jié)果(BOOL值 )程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF操作成功WHILE 查詢結(jié)果集未讀至文件尾讀取各項值置入讀者已借圖書信息字符串返回”操作成功”ELSE置空讀者已借圖書信息字符串返回”操作失敗”接口調(diào)用形式: BOOL GetLBInf(const long ReaderID,CString &strLBInf)傳入?yún)⒘浚?ReaderID( 整型常量 )查詢參數(shù)strLBInf(引用型字符串 )返回用的格式化的查詢信息.傳出參量:查詢成功 / 失敗標志 (BOOL值 ) 查詢操作結(jié)果信息存儲分配局部變量 :數(shù)據(jù)庫pR
11、ecords_RecordsetPtr數(shù)據(jù)庫查詢結(jié)果集指針查詢參數(shù)vtQuiry_variant_t查詢命令字符串vNull_variant_t查詢連接參量類型轉(zhuǎn)換strQuiryCString查詢命令類型轉(zhuǎn)換測試要點數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常輸入正常 ( 讀者證號合法)輸入異常 ( 讀者證號非法)數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常3.2.4借書登記模塊功能登錄借書信息輸入項目讀者證號 ( 整型常量 ) ;圖書書號 ( 整型常量 )輸出項目操作結(jié)果 (BOOL值 )程序邏輯生成數(shù)據(jù)庫操作命令調(diào)用數(shù)據(jù)庫操作模塊IF操作成功返回”操作成功”ELSE返回”操作失敗”接口調(diào)用形式: BOOL WriteB
12、lrecord(const long ReaderID,const long BookID)傳入?yún)?shù): ReaderID( 整型常量 )操作參數(shù) ( 借閱者讀者證號 )BookID(整型常量 )操作參數(shù) ( 借閱圖書書號 )傳出參數(shù):操作成功/ 失敗標志 ( 返回值 )存儲分配局部變量 :操作命令參數(shù)vRecsAffected_variant_t操作影響vtCommand_variant_t操作命令類型轉(zhuǎn)換strCommandCString操作命令類型轉(zhuǎn)換strTodayCString借書日期類型轉(zhuǎn)換oleTodayCOleDateTime借書日期測試要點數(shù)據(jù)庫連接正常數(shù)據(jù)庫操作正常輸入?yún)?shù)合
13、法.輸入?yún)?shù)非法數(shù)據(jù)庫操作異常數(shù)據(jù)庫連接異常4 還書模塊功能運行還書對話框查驗輸入的圖書書號對合法輸入登錄還書信息顯示相關(guān)信息( 本次還書操作信息,尚未歸還圖書的相關(guān)信息,讀者信息)輸入項目圖書書號 ( 用戶輸入 )輸出項目相關(guān)信息 ( 本次還書操作信息,尚未歸還的圖書信息,讀者信息)程序邏輯初始對話框點擊退出出錯返回借書記錄查驗?zāi)K登記還書更新還書信息及顯示關(guān)閉對話框接口調(diào)用形式: CBookInDlg:ReturnBook(const _ConnectionPtr pConnection,const int MaxLBDay)傳入?yún)⒘浚?pConnection(數(shù)據(jù)庫連接指針常量)提供數(shù)據(jù)
14、庫連接MaxLBDay( 整型常量 )系統(tǒng)參數(shù) ( 借書天數(shù)上限 )傳出參量:無存儲分配內(nèi)部變量:數(shù)據(jù)庫m_pConnection_ConnectionPtr數(shù)據(jù)庫連接指針m_pRecords_RecordsetPtr數(shù)據(jù)庫查詢結(jié)果集指針用戶界面m_lBookIDlong欲還圖書書號m_strLenderIDCString借閱者圖書證號顯示m_strLenderCString借閱者姓名m_strRBInfCString已還圖書信息顯示m_strNRBInfCString未還圖書信息顯示.m_strRBNumCString已還圖書數(shù)顯示m_strNRBNumCString未還圖書數(shù)顯示內(nèi)部參數(shù)m
15、_lCurrIDlong當前還書者讀者證號m_intRBNumint已還圖書計數(shù)m_MaxLBDayint借書天數(shù)上限測試要點模塊正常工作流程對輸入的查驗,包括輸入值的合法性與合理性檢驗數(shù)據(jù)庫連接異常能否做出適當處理數(shù)據(jù)庫數(shù)據(jù)異常時能否判斷并給予適當處理4.1借書記錄查驗?zāi)K功能查驗借書記錄是否存在( 即是否存在與指定書號相對應(yīng)的借書記錄)輸入項目圖書書號 ( 傳入?yún)?shù) )輸出項目查驗結(jié)果 ( 返回值 ) ;查詢結(jié)果集 ( 圖書書號、書名、狀態(tài)、出借日期)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF操作成功IF 查詢結(jié)果集不為空( 存在該借書記錄)返回”記錄存在”ELSE警告”記錄不存在”
16、ELSE警告”查詢失敗”返回”記錄不存在”接口調(diào)用形式: BOOL CheckBlrcord(const long BookID)傳入?yún)⒘浚?BookID( 整型常量 )傳出參量:書號合法/ 非法標志 (BOOL型 )存儲分配局部變量:查詢參數(shù)vtQuiry_variant_t查詢命令vNull_variant_t查詢連接類型轉(zhuǎn)換strQuiryCString查詢命令類型轉(zhuǎn)換引用的全局變量:m_pConnection_ConnectionPtr使用m_pRecords_RecordsetPtr寫 ( 打開 )測試要點數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常合法的圖書書號返回“真”查驗結(jié)果.不合法的圖書書號
17、返回“假”查驗結(jié)果,給出警告提示數(shù)據(jù)庫數(shù)據(jù)異常返回“假”查驗結(jié)果,給出數(shù)據(jù)異常警告數(shù)據(jù)庫連接異常返回“假”查驗結(jié)果,給出數(shù)據(jù)庫連接異常警告4.2相關(guān)信息獲取模塊功能獲取指定讀者 ( 讀者證號 ) 的借書記錄,獲取的信息包括所借圖書書名,借書日期以及所借圖書的總本數(shù)。輸入項目讀者證號 ( 傳入?yún)?shù) ) ;相關(guān) ( 借書 ) 信息 ( 公共變量 )輸出項目已借圖書數(shù) ( 返回值 )程序邏輯生成數(shù)據(jù)庫查詢命令I(lǐng)F操作成功初始化 ( 相關(guān)信息字符串置為空已借圖書計數(shù)置為0)WHILE 未讀至查詢結(jié)果集尾置相關(guān)信息字符串計數(shù)累加返回計數(shù)值ELSE置相關(guān)信息字符串為”操作異?!狈祷亍笔酥尽?-1)接口
18、調(diào)用形式: int GetLBInf(const long ReaderID)傳入?yún)?shù): ReaderID( 整型常量 )指定的讀者證號傳出參數(shù):獲取的相關(guān)記錄數(shù)( 整型 )如發(fā)生異常,返回值置為負存儲分配局部變量:查詢參數(shù)vtQuiry_variant_t查詢命令vNull_variant_t查詢連接類型轉(zhuǎn)換strQuiryCString查詢命令類型轉(zhuǎn)換vtemp_variant_t查詢結(jié)果類型轉(zhuǎn)換oleDateCOleDateTime借書時間類型轉(zhuǎn)換記錄計數(shù)countint計算獲取的記錄數(shù)引用的全局變量: m_pConnection_ConnectionPtr使用m_pRecords_Re
19、cordsetPtr寫 ( 打開、關(guān)閉 )m_strNRBInfCString寫測試要點數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正??色@取的借書記錄數(shù)為零返回結(jié)果為0,引用字符串置空可獲取的借書記錄數(shù)不為零返回記錄數(shù), 并將相關(guān)信息記錄在引用字符串中數(shù)據(jù)庫數(shù)據(jù)異常返回異常指示,給出警告數(shù)據(jù)庫連接異常返回異常指示,給出警告.4.4還書信息記錄模塊功能記錄本次還書操作的信息,包括圖書書名,超期天數(shù)。輸入項目包含相關(guān)信息( 書名、借書日期) 的查詢結(jié)果集( 公共變量 )輸出項目更新后的格式化還書信息( 公共變量 )程序邏輯WHILE 傳入的查詢結(jié)果集未讀至文件尾讀取書名 , 置入還書信息字符串讀取借書日期計算超期天
20、數(shù)置入還書信息字符串光標移至下一個記錄接口調(diào)用形式: void SaveRBInf(void)傳入?yún)?shù):無傳出參數(shù):無存儲分配局部變量:類型轉(zhuǎn)換vtemp_variant_t查詢結(jié)果類型轉(zhuǎn)換strExcessCString超期天數(shù)類型轉(zhuǎn)換計算變量oleDateCOleDateTime借書日期oleExcessCOleDateTimeSpan超期天數(shù)intExcessint超期天數(shù)引用的全局變量: m_pRecords_RecordsetPtr讀 ( 關(guān)閉記錄集 )m_strRBInfCString更新m_MaxLBDayint讀測試要點查詢結(jié)果集正常查詢結(jié)果集異常4.5還書登記模塊功能登記還書
21、 ( 刪除借書記錄,更新圖書狀態(tài))輸入項目圖書書號 ( 輸入?yún)?shù) )輸出項目操作成功 / 失敗標志 ( 返回值 )程序邏輯生成數(shù)據(jù)庫操作命令( 更新 )IF操作成功生成數(shù)據(jù)庫操作命令( 刪除 ).IF操作成功返回”操作成功”返回”操作失敗”接口調(diào)用形式: BOOL DelBlrecord(const long BookID)傳入?yún)?shù): BookID( 整型常量 )返還圖書書號傳出參數(shù):操作成功/ 失敗標志 (BOOL值 )存儲分配局部變量:操作參數(shù)vtCommand_variant_t操作命令vRecsAffected_variant_t操作影響參數(shù)類型轉(zhuǎn)換strCommandCString操
22、作命令類型轉(zhuǎn)換引用的全局變量:m_pConnection_ConnectionPtr使用測試要點數(shù)據(jù)庫連接正常圖書書號合法圖書書號不合法數(shù)據(jù)庫連接異常5 圖書查詢模塊功能根據(jù)給定查詢條件,查詢數(shù)據(jù)庫,獲取圖書信息輸入項目查詢方式指定以及查詢關(guān)鍵字輸出項目查詢結(jié)果列表顯示程序邏輯初始化對話框查詢生成查詢命令查詢數(shù)據(jù)庫顯示結(jié)果列表退出.接口調(diào)用形式: CBookQuiryDlg:QuiryBook(const _ConnectionPtr pConnection)傳入?yún)?shù): pConnection(數(shù)據(jù)庫連接指針)傳出參數(shù):無存儲分配內(nèi)部變量:數(shù)據(jù)庫m_pBooks_RecordsetPtr數(shù)據(jù)庫
23、查詢結(jié)果集指針用戶界面m_strAuthorCString作者關(guān)鍵字m_bAuthorBOOL作者查詢選擇狀態(tài)m_strBookNameCString書名關(guān)鍵字m_bBookNameBOOL書名查詢選擇狀態(tài)m_strPublisherCString出版社關(guān)鍵字m_bPublisherBOOL出版社查詢選擇狀態(tài)m_intYear1int出版時間關(guān)鍵字m_intYear2int出版時間關(guān)鍵字m_intMonth1int出版時間關(guān)鍵字m_intMonth2int出版時間關(guān)鍵字m_bPubTimeBOOL出版時間查詢選擇狀態(tài)m_intTimeTypeint出版時間查詢方式選擇局部變量:查詢參數(shù)vtQu
24、iry_variant_t查詢命令vNull_variant_t查詢連接類型轉(zhuǎn)換strQuiryCString查詢命令類型轉(zhuǎn)換測試要點數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常獲得正確的查詢結(jié)果并顯示數(shù)據(jù)庫數(shù)據(jù)異常給出警告數(shù)據(jù)庫連接異常給出警告5.1查詢命令生成模塊功能根據(jù)用戶界面的輸入生成查詢命令輸入項目用戶界面的輸入值( 公共變量 )輸出項目查詢命令 ( 返回值 )程序邏輯讀取各復(fù)選框的值IF選中 AND 關(guān)鍵字不為空生成查詢條件生成數(shù)據(jù)庫查詢命令返回生成的查詢命令接口調(diào)用形式: CString GetQuiryString()傳入?yún)?shù):無.傳出參數(shù):查詢命令(CString)存儲分配局部變量:strQ
25、uiryCString查詢命令字符串strTempCString臨時字符串測試要點用戶輸入合理用戶輸入不合理( 沒有指定查詢方式,沒有輸入查詢關(guān)鍵字)5.2數(shù)據(jù)庫查詢模塊功能根據(jù)輸入的查詢命令查詢數(shù)據(jù)庫輸入項目查詢命令 ( 傳入?yún)?shù) )輸出項目數(shù)據(jù)庫查詢結(jié)果( 返回值 ) ;數(shù)據(jù)庫查詢結(jié)果集( 公共變量 )程序邏輯查詢數(shù)據(jù)庫IF操作成功返回”操作成功”ELSE返回”操作失敗”接口調(diào)用形式: BOOL DBQuiry(const CString strQuiry)傳入?yún)?shù): strQuiry(字符串型常量 )數(shù)據(jù)庫查詢命令傳出參數(shù):查詢操作成功/ 失敗標志 (BOOL值 )存儲分配局部變量:查詢
26、參數(shù)vtQuiry_varaint_tvRecsAffected_variant_t引用的全局變量:m_pConnection_ConnectionPtrm_pBooks_RecordsetPtr數(shù)據(jù)庫查詢命令數(shù)據(jù)庫查詢連接使用讀測試要點數(shù)據(jù)庫連接正常輸入查詢命令合法獲取非空查詢結(jié)果集返回“真”返回值,查詢結(jié)果保存在查詢結(jié)果集中獲取空查詢結(jié)果集返回“真”返回值,查詢結(jié)果集為空輸入查詢命令不合法返回“假”返回值,查詢結(jié)果集指針指向空,給出警告數(shù)據(jù)庫連接異常5.3數(shù)據(jù)顯示模塊功能按一定格式列表顯示查詢結(jié)果,并根據(jù)用戶要求重排列輸入項目查詢結(jié)果集 ( 傳入?yún)?shù) ) ;輸出項名稱( 傳入?yún)?shù) ) ;查
27、詢結(jié)果表參數(shù),包括行數(shù)、列數(shù)( 傳入?yún)?shù) ).輸出項目用戶界面顯示程序邏輯初始化 ( 設(shè)置行數(shù)、列數(shù)、列名稱,載入輸入的查詢結(jié)果集內(nèi)的數(shù)據(jù))顯示列表WHILE 用戶未輸入“返回”IF用戶拖動列的標題欄重新設(shè)置列的位置排序刷新顯示返回接口調(diào)用形式: CListShowDlg:ShowList(const _RecordsetPtr pRecords,CString *strArray,const int cols,const int rows)傳入?yún)?shù): pRecords( 數(shù)據(jù)庫查詢結(jié)果集指針)需要顯示的查詢結(jié)果strArray( 字符串數(shù)組頭指針)顯示項的名稱( 列名 )cols( 整型常量
28、 )列表列數(shù)rows( 整型常量 )列表行數(shù)傳出參數(shù):無存儲分配內(nèi)部數(shù)據(jù):數(shù)據(jù)庫m_pRecords_RecordsetPtr數(shù)據(jù)庫查詢結(jié)果集內(nèi)部參數(shù)m_strArrayCString20列名存儲數(shù)組m_intColsint列表列數(shù)m_intRowsint列表行數(shù)m_cltFGridCMSFlexGrid列表控件m_iMouseColint用戶鼠標所在列測試要點查詢結(jié)果正常查詢結(jié)果集為空顯示消息框提示查詢結(jié)果集不為空正常顯示結(jié)果列表,并根據(jù)用戶輸入調(diào)整輸出查詢結(jié)果異常顯示警告6 系統(tǒng)操作模塊功能驗證輸入的系統(tǒng)操作員賬號以及口令,完成權(quán)限管理運行系統(tǒng)操作對話框,根據(jù)用戶輸入調(diào)用各子模塊,完成:圖
29、書庫操作 ( 瀏覽、修改、增加、刪除) ;讀者庫操作 ( 瀏覽、修改、增加、刪除) ;數(shù)據(jù)統(tǒng)計;更改口令;系統(tǒng)管理( 修改系統(tǒng)設(shè)置,瀏覽、修改、增加、刪除系統(tǒng)操作員) ;輸入項目.數(shù)據(jù)庫連接 ( 傳入?yún)?shù) )輸出項目無程序邏輯初始化圖書操作模塊要求輸入賬號口令讀者操作模塊返回操作取消數(shù)據(jù)統(tǒng)計模塊系統(tǒng)操作權(quán)限查驗?zāi)K警告系統(tǒng)設(shè)置模塊賬號口令錯誤 ?返回數(shù)據(jù)備份初始化系統(tǒng)操作對話框數(shù)據(jù)恢復(fù)UNTIL輸入 ”返回 ”更改口令關(guān)閉對話框接口調(diào)用形式: CSysDlg:ManageSys(const _ConnectionPtr pConnection)傳入?yún)?shù): pConnection (數(shù)據(jù)庫連接指
30、針)傳出參數(shù):無存儲分配內(nèi)部數(shù)據(jù):數(shù)據(jù)庫m_pConnection_ConnectionPtr數(shù)據(jù)庫連接指針子模塊m_BookDlgCBookDlg圖書庫操作子模塊m_ReaderDlgCReaderDlg讀者庫操作子模塊m_QuiryDlgCQuiryDlg數(shù)據(jù)統(tǒng)計子模塊m_SysSettingDlg CSysSettingDlg系統(tǒng)設(shè)置子模塊內(nèi)部參數(shù)m_strCurrUserCString當前操作者賬號m_RightLevelint操作權(quán)限局部變量:輸入pwdDlgCPasswordDlg賬號口令輸入對話框測試要點數(shù)據(jù)庫連接正常正常執(zhí)行過程輸入的賬號口令合法根據(jù)權(quán)限進行顯示控制,正常調(diào)用各
31、子模塊輸入的賬號口令不合法警告數(shù)據(jù)庫連接異常6.1系統(tǒng)操作權(quán)限查驗?zāi)K功能查驗輸入的系統(tǒng)操作員賬號以及口令是否合法,并返回合法操作員的權(quán)限級別輸入項目.系統(tǒng)操作員口令( 傳入?yún)?shù) )輸出項目操作員權(quán)限級別( 返回值 )程序邏輯生成數(shù)據(jù)庫查詢命令查詢數(shù)據(jù)庫IF操作成功IF查詢結(jié)果集非空返回權(quán)限級別ELSE顯示警告”非法的賬號或口令”返回 -1ELSE顯示警告”不能查詢數(shù)據(jù)庫”返回 -1接口調(diào)用形式: CheckRight(const CString oldPwd)傳入?yún)?shù): oldPwd( 字符串常量 )待查驗的系統(tǒng)操作員口令傳出參數(shù):系統(tǒng)操作權(quán)限( 整型 ,0-7)如口令非法,置為 -1存儲分
32、配局部變量:數(shù)據(jù)庫pTemp_RecordsetPtr數(shù)據(jù)庫查詢結(jié)果集指針查詢參數(shù)vNull_variant_t數(shù)據(jù)庫查詢連接vtQuiry_variant_t數(shù)據(jù)庫查詢命令類型轉(zhuǎn)換strQuiryCString查詢命令類型轉(zhuǎn)換內(nèi)部參數(shù)resultint權(quán)限級別引用的全局變量: m_pConnection_ConnectionPtr數(shù)據(jù)庫連接指針m_strCurrUserCString當前操作員賬號測試要點數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常合法的賬號口令獲取相應(yīng)的權(quán)限級別非法的賬號口令返回錯誤指示,給出警告數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常6.2 圖書庫操作模塊功能根據(jù)輸入提供對圖書庫的瀏覽、數(shù)據(jù)修改、增
33、加、刪除記錄等操作增加記錄時,提供對生成的圖書書號的唯一性驗證刪除記錄時,提供對所刪除記錄的相關(guān)性檢驗輸入項目數(shù)據(jù)庫連接 ( 傳入?yún)?shù) )輸出項目無.程序邏輯初始化 ( 獲取數(shù)據(jù)庫連接, 顯示對話框 )WHILE 用戶未輸入退出IF用戶輸入”下一個”更新當前記錄移動至下一個記錄刷新顯示IF用戶輸入”上一個”更新當前記錄移動至上一個記錄刷新顯示IF用戶輸入”移動到”更新當前記錄要求輸入圖書書號IF該書號存在移動到指定的記錄刷新顯示ELSE顯示警告”該圖書書號不存在”IF用戶輸入”加入”更新當前記錄要求輸入圖書書號IF該書號已存在顯示警告”該書號已存在”ELSE插入指定圖書書號的新記錄記錄總數(shù)加一
34、光標移動至新記錄處IF用戶輸入”刪除”更新當前記錄給出警告”確定繼續(xù)”IF用戶確認繼續(xù)IF 該圖書借出給出警告”刪除相關(guān)借書記錄”IF用戶確認刪除相關(guān)借書記錄ELSE中止操作刪除該圖書記錄記錄總數(shù)減一IF 最后一條記錄被刪除移動至前一條記錄ELSE移動至下一條記錄.顯示刷新更新記錄接口調(diào)用形式: CBookDlg:ManageBooks(const _ConnectionPtr pConnection)傳入?yún)?shù): pConnection(數(shù)據(jù)庫連接指針)傳出參數(shù):無存儲分配內(nèi)部數(shù)據(jù):數(shù)據(jù)庫m_pConnection_ConnectionPtr數(shù)據(jù)庫連接指針m_pRs_RecordsetPtr數(shù)
35、據(jù)庫查詢結(jié)果集指針用戶界面m_lBookIDlong當前記錄中書號項m_strAuthorCString當前記錄中作者項m_strBookNameCString當前記錄中書名項m_strPublisherCString當前記錄中出版社項m_uPublishYearUINT當前記錄中出版年項m_uPublishMonth UINT當前記錄中出版月項m_intStatusint當前記錄中狀態(tài)項m_fBookPricefloat當前記錄中單價項m_strCurrentBookCString當前記錄位置顯示m_strTotalBookCString記錄總數(shù)顯示內(nèi)部參數(shù)m_intPositionint當
36、前記錄位置計數(shù)m_lRecordCountlong記錄總數(shù)計數(shù)測試要點數(shù)據(jù)庫連接正常記錄集為空是否工作狀態(tài)正常記錄集非空對各種用戶輸入的響應(yīng)數(shù)據(jù)庫連接異常6.2.1獲取圖書記錄集模塊功能獲取所有圖書記錄,置記錄總數(shù)以及當前位置的初始值輸入項目操作成功 / 失敗標志 ( 返回值 )輸出項目圖書記錄集 ( 公共變量 ) ;記錄總數(shù) ( 公共變量 ) ;當前位置 ( 公共變量 )程序邏輯生成數(shù)據(jù)庫查詢命令查詢數(shù)據(jù)庫IF操作成功返回”成功”ELSE返回”失敗”接口調(diào)用形式: BOOL OpenRecords()傳入?yún)?shù):無傳出參數(shù):操作成功/ 失敗標志 (BOOL值 ).引用的全局變量:m_pRs_R
37、ecordsetPtr寫 ( 打開 )m_intPositionint寫m_lRecordCountlong寫存儲分配局部變量:查詢參數(shù)vNull_variant_t查詢連接vtQuiry_variant_t查詢命令類型轉(zhuǎn)換strQuiryCString查詢命令類型轉(zhuǎn)換測試要點數(shù)據(jù)庫連接正常圖書記錄集為空圖書記錄集非空數(shù)據(jù)庫連接異常6.2.2更新顯示模塊功能更顯當前顯示輸入項目圖書記錄集 ( 公共變量 ) ;用戶界面顯示字符串( 公共變量 )輸出項目更新后的用戶界面顯示字符串( 公共變量 )程序邏輯逐項讀取記錄中的數(shù)據(jù)域置入顯示字符串中IF當前記錄為第一條禁止”前一個”按鈕IF當前記錄為最后一
38、條禁止”后一個”按鈕IF記錄總數(shù)為0禁止”加入”以外的所有按鈕刷新顯示界面接口調(diào)用形式: void RefreshDataView()傳入?yún)?shù):無傳出參數(shù):無引用的全局變量:m_pRs_RecordsetPtr讀m_lBookIDlong寫m_strAuthorCString寫m_strBookNameCString寫m_strPublisherCString寫m_uPublishYearUINT寫m_uPublishMonth UINT寫m_intStatusint寫m_fBookPricefloat寫m_strCurrentBookCString寫m_strTotalBookCString
39、寫.存儲分配局部變量:類型轉(zhuǎn)換vtemp_variant_t記錄集數(shù)據(jù)域類型轉(zhuǎn)換測試要點記錄集正常記錄集為空記錄集非空記錄集異常6.2.3更新當前記錄模塊功能根據(jù)用戶界面的輸入更新當前記錄輸入項目用戶界面的輸入,即用戶界面各顯示變量的值( 公共變量 )輸出項目數(shù)據(jù)庫中更新后的圖書記錄( 存儲文件 ) ;操作成功 / 失敗標志 ( 返回值 )程序邏輯保存當前圖書書號讀入界面的值IF書號發(fā)生變化給出警告”不能更改圖書書號”恢復(fù)圖書書號的值生成數(shù)據(jù)庫更新語句IF更新操作成功重新獲取記錄集光標移動到原位置返回”成功”ELSE給出警告”操作失敗”返回”失敗”接口調(diào)用形式: BOOL RefreshData()傳入?yún)?shù):無傳出參數(shù):操作成功/ 失敗標志 (BOOL值 )引用的全局變量:m_pConnection_ConnectionPtr使用m_pRs_RecordsetPtr寫m_lBookIDlong讀寫m_strAuthorCString讀m_strBookNameCString讀m_strPublisherCString讀m_uPublishYearUINT讀m_uPublishMonth UINT讀m_intStatusint讀m_fBookPricefloat讀m_strCurrentBookC
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年度黑龍江省農(nóng)業(yè)科學院公開招聘博士34人參考考試試題附答案解析
- 煙葉挑選生產(chǎn)管理制度
- 安全生產(chǎn)五個一清單制度
- 交通運輸局安全生產(chǎn)制度
- 專利生產(chǎn)設(shè)備制度
- 機油廠家生產(chǎn)制度范本
- 漁業(yè)生產(chǎn)作業(yè)制度
- 施工企業(yè)生產(chǎn)部管理制度
- 生產(chǎn)進度會議制度
- 2026四川自貢市鹽晟國有資本投資集團有限公司招聘財務(wù)部副部長、會計崗位考察對象備考考試試題附答案解析
- 2026年1月上海市春季高考數(shù)學試題卷(含答案及解析)
- 深度解析(2026)DZT 0064.45-1993地下水質(zhì)檢驗方法 甘露醇-堿滴定法 測定硼
- 3.2地區(qū)產(chǎn)業(yè)結(jié)構(gòu)變化高中地理人教版選擇性必修2
- 研究受試者知情同意書
- 2025年3D建模服務(wù)保密協(xié)議
- 戰(zhàn)場適應(yīng)性訓練
- 各種挖機租賃合同范本
- 油料運輸應(yīng)急預(yù)案
- 自來水維修搶修知識培訓課件
- 2025浙江紹興市新聞傳媒中心(傳媒集團)招聘6人筆試題庫歷年考點版附帶答案詳解
- 第四單元民族關(guān)系與國家關(guān)系(任務(wù)型復(fù)習課件)歷史統(tǒng)編版選擇性必修1
評論
0/150
提交評論