軟件設(shè)計(jì)說明書圖書管理系統(tǒng)樣本_第1頁
軟件設(shè)計(jì)說明書圖書管理系統(tǒng)樣本_第2頁
軟件設(shè)計(jì)說明書圖書管理系統(tǒng)樣本_第3頁
軟件設(shè)計(jì)說明書圖書管理系統(tǒng)樣本_第4頁
軟件設(shè)計(jì)說明書圖書管理系統(tǒng)樣本_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

圖書管理系統(tǒng)設(shè)計(jì)闡明書編寫:校對(duì):審核:目錄TOC\o"1-3"\h\u38331引言 1216712程序系統(tǒng)構(gòu)造 287903程序(標(biāo)記符)設(shè)計(jì)闡明 2124064還書模塊 7259825圖書查詢模塊 1164876系統(tǒng)操作模塊 1529036參照資料 361引言1目依照《需求規(guī)格闡明書》、《概要設(shè)計(jì)闡明書》,在仔細(xì)考慮討論之后,咱們對(duì)《圖書管理系統(tǒng)》軟件功能劃分、數(shù)據(jù)構(gòu)造、軟件總體構(gòu)造實(shí)既有了進(jìn)一步想法。咱們將這些想法記錄下來,作為詳細(xì)設(shè)計(jì)闡明書,為進(jìn)一步設(shè)計(jì)軟件、編寫代碼打下基本。1.2概述隨著社會(huì)信息量與日俱增,作為信息存儲(chǔ)重要媒體之一圖書,數(shù)量、規(guī)模比以往任何時(shí)候都大多,無論個(gè)人還是圖書管理部門都需要使用以便而有效方式來管理自己書籍。在計(jì)算機(jī)日益普及今天,對(duì)個(gè)人而言若采用一套行之有效圖書管理系統(tǒng)來管理自己書籍,會(huì)以便許多。對(duì)圖書管理部門而言,此前單一手工檢索已不能滿足人們規(guī)定,為了便于圖書資料管理需要有效圖書管理軟件。本圖書管理系統(tǒng)軟件是一套功能比較完善數(shù)據(jù)管理軟件,具備數(shù)據(jù)操作以便高效迅速等長處。該軟件采用功能強(qiáng)大數(shù)據(jù)庫軟件開發(fā)工具進(jìn)行開發(fā),具備較好可移植性,可在應(yīng)用范疇較廣DOS、WINDOWS系列等操作系統(tǒng)上使用1.3定義文檔中采用專門術(shù)語定義及縮略詞簡要如下:LMS:LibraryManagementSystem,圖書管理系統(tǒng)2程序系統(tǒng)構(gòu)造系統(tǒng)操作模塊系統(tǒng)操作模塊系統(tǒng)設(shè)立圖書查詢更改口令系統(tǒng)操作讀者庫操作數(shù)據(jù)記錄讀者查詢輸入輸出圖書庫操作數(shù)據(jù)備份數(shù)據(jù)恢復(fù)3程序(標(biāo)記符)設(shè)計(jì)闡明3.1主模塊初始化圖書查詢模塊還書模塊借書模塊系統(tǒng)查詢模塊功能初始化圖書查詢模塊還書模塊借書模塊系統(tǒng)查詢模塊建立與數(shù)據(jù)庫連接獲取系統(tǒng)設(shè)立運(yùn)營主對(duì)話框依照輸入調(diào)用子模塊退出系統(tǒng)時(shí)斷開與數(shù)據(jù)庫連接輸入項(xiàng)目顧客鼠標(biāo)點(diǎn)擊輸入程序邏輯見右圖存儲(chǔ)分派內(nèi)部數(shù)據(jù): 數(shù)據(jù)庫連接 m_pConnection _ConnectionPtr 數(shù)據(jù)庫連接指針 m_IsConnected BOOL 數(shù)據(jù)庫連接批示 系統(tǒng)設(shè)立 m_MaxLBNum int 可借圖書數(shù)上限 m_MaxLBDay int 借書天數(shù)上限 子對(duì)話框 m_BookOutDlg CBookOutDlg 借書對(duì)話框 m_BookInDlg CBookInDlg 還書對(duì)話框 m_BookQuiryDlg CBookQuiryDlg 圖書查詢對(duì)話框 m_SysDlg CSysDlg 系統(tǒng)操作對(duì)話框測試要點(diǎn)數(shù)據(jù)庫連接狀況:正常狀況,數(shù)據(jù)庫文獻(xiàn)缺少,外部系統(tǒng)異常。系統(tǒng)設(shè)立獲?。赫顩r,外部系統(tǒng)異常。對(duì)顧客輸入響應(yīng): 合法輸入,可以正常調(diào)用子模塊; 非法輸入,系統(tǒng)能否辨別,并作出響應(yīng)(提出警告); 子模塊異常狀況,系統(tǒng)能否及時(shí)做出響應(yīng)。3.2借書模塊功能查驗(yàn)輸入讀者證號(hào)運(yùn)營借書對(duì)話框獲取該讀者有關(guān)信息查驗(yàn)輸入圖書號(hào)登記借書輸入項(xiàng)目讀者證號(hào)、圖書書號(hào)(顧客輸入)輸出項(xiàng)目讀者信息(姓名);讀者已借圖書信息(書名、借書日期);程序邏輯對(duì)話框初始化操作取消對(duì)話框初始化操作取消輸入不合理輸入不合理點(diǎn)擊返回點(diǎn)擊返回出錯(cuò)輸入讀者證號(hào)查驗(yàn)借書對(duì)話框查驗(yàn)出錯(cuò)輸入讀者證號(hào)查驗(yàn)借書對(duì)話框查驗(yàn)借書登記借書登記更新有關(guān)信息及顯示更新有關(guān)信息及顯示關(guān)閉對(duì)話框關(guān)閉對(duì)話框接口調(diào)用形式:voidCBookDlg::LendBook(const_ConnectionPtrpConnection,constintMaxLBNum)傳入?yún)?shù):pConnection 數(shù)據(jù)庫連接指針 MaxLBNum 系統(tǒng)參數(shù)(可借圖書上限)傳出參數(shù):無存儲(chǔ)分派內(nèi)部數(shù)據(jù): 數(shù)據(jù)庫 m_pConnection _ConnectionPtr 數(shù)據(jù)庫連接指針 顧客界面 m_strReaderName CString 讀者姓名 m_strLBInf CString 已借圖書信息 m_strLBNum CString 已借圖書數(shù)顯示 m_lBookID long 欲借圖書書號(hào) 內(nèi)部參數(shù) m_lReaderID long 當(dāng)前讀者證號(hào) m_MaxLBNum int 可借圖書數(shù)上限測試要點(diǎn)模塊正常運(yùn)營流程顧客輸入數(shù)據(jù)檢查(讀者證號(hào)、圖書書號(hào)),涉及數(shù)據(jù)合理性檢查,以及合法性檢查數(shù)據(jù)庫操作數(shù)據(jù)庫連接異常時(shí)響應(yīng)狀況3.2.1讀者查驗(yàn)?zāi)K功能查驗(yàn)輸入讀者證號(hào)與否合法(即與否存在與該讀者證號(hào)相應(yīng)讀者記錄)輸入項(xiàng)目讀者證號(hào)(整型常數(shù)),讀者姓名(引用型字符串)輸出項(xiàng)目查驗(yàn)成果(BOOL值)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF返回成果集為空(不存在該讀者證號(hào)) 置讀者姓名字符串為空返回”非法讀者證號(hào)”ELSE 置讀者姓名字符串返回”合法讀者證號(hào)”接口調(diào)用形式:BOOLCheckReader(constlongReaderID,CString&strReaderName)傳入?yún)?shù):ReaderID(常量參數(shù)傳入) 待查驗(yàn)讀者證號(hào) m_pConnection(借書模塊內(nèi)全局變量) 數(shù)據(jù)庫連接指針傳出參數(shù):讀者證號(hào)存在/不存在標(biāo)志(返回值) strReaderName(傳入引用參數(shù)) 讀者證號(hào)相應(yīng)讀者姓名(讀者證號(hào)不存在時(shí)置為空)存儲(chǔ)分派局部變量:數(shù)據(jù)庫 pReader _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針 查詢參數(shù) vtQuiry _variant_t 查詢命令 vNull _variant_t 查詢連接 類型轉(zhuǎn)換 strQuiry Cstring 查詢命令類型轉(zhuǎn)換 vtemp _variant_t 查詢成果類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常時(shí)輸入合理合法參數(shù)輸入?yún)?shù)不合理輸入?yún)?shù)不合法數(shù)據(jù)庫連接異常;數(shù)據(jù)庫數(shù)據(jù)異常(讀者姓名為空)3.2.2 圖書查驗(yàn)?zāi)K功能查驗(yàn)輸入圖書書號(hào)與否合法輸入項(xiàng)目圖書書號(hào)(整型常量)輸出項(xiàng)目查驗(yàn)成果(BOOL值)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF返回成果集為空(不存在該圖書書號(hào))返回”非法圖書書號(hào)”ELSE返回”合法圖書書號(hào)”接口調(diào)用形式: BOOLCheckBook(constlongBookID)傳入?yún)?shù): BookID(整型常量) 帶查驗(yàn)圖書書號(hào)傳出參數(shù): 書號(hào)合法/不合法標(biāo)志(返回值) 查驗(yàn)成果存儲(chǔ)分派局部變量: 數(shù)據(jù)庫 pBook _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針 查詢參量 vtQuiry _variant_t 查詢字符串 vNull _variant_t 查詢連接參量 類型轉(zhuǎn)換 strQuiry Cstring 查詢命令類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常輸入書號(hào)合理合法輸入書號(hào)不合理輸入書號(hào)不合法數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常3.2.3 有關(guān)信息獲取模塊功能獲取合法讀者借書記錄輸入項(xiàng)目合法讀者證號(hào)(整型常量);讀者已借圖書信息(引用型字符串)輸出項(xiàng)目查詢操作成果(BOOL值)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF操作成功 WHILE查詢成果集未讀至文獻(xiàn)尾 讀取各項(xiàng)值 置入讀者已借圖書信息字符串 返回”操作成功”ELSE 置空讀者已借圖書信息字符串 返回”操作失敗”接口調(diào)用形式:BOOLGetLBInf(constlongReaderID,CString&strLBInf)傳入?yún)⒘浚篟eaderID(整型常量) 查詢參數(shù) strLBInf(引用型字符串) 返回用格式化查詢信息傳出參量:查詢成功/失敗標(biāo)志(BOOL值) 查詢操作成果信息存儲(chǔ)分派局部變量: 數(shù)據(jù)庫 pRecords _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針 查詢參數(shù) vtQuiry _variant_t 查詢命令字符串 vNull _variant_t 查詢連接參量 類型轉(zhuǎn)換 strQuiry CString 查詢命令類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常輸入正常(讀者證號(hào)合法)輸入異常(讀者證號(hào)非法)數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常3.2.4 借書登記模塊功能登錄借書信息輸入項(xiàng)目讀者證號(hào)(整型常量);圖書書號(hào)(整型常量)輸出項(xiàng)目操作成果(BOOL值)程序邏輯生成數(shù)據(jù)庫操作命令調(diào)用數(shù)據(jù)庫操作模塊IF操作成功 返回”操作成功”ELSE 返回”操作失敗”接口調(diào)用形式:BOOLWriteBlrecord(constlongReaderID,constlongBookID)傳入?yún)?shù):ReaderID(整型常量) 操作參數(shù)(借閱者讀者證號(hào)) BookID(整型常量) 操作參數(shù)(借閱圖書書號(hào))傳出參數(shù):操作成功/失敗標(biāo)志(返回值)存儲(chǔ)分派局部變量: 操作命令參數(shù) vRecsAffected _variant_t 操作影響 vtCommand _variant_t 操作命令 類型轉(zhuǎn)換 strCommand CString 操作命令類型轉(zhuǎn)換 strToday CString 借書日期類型轉(zhuǎn)換 oleToday COleDateTime 借書日期測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫操作正常輸入?yún)?shù)合法輸入?yún)?shù)非法數(shù)據(jù)庫操作異常數(shù)據(jù)庫連接異常4還書模塊功能運(yùn)營還書對(duì)話框查驗(yàn)輸入圖書書號(hào)對(duì)合法輸入登錄還書信息顯示有關(guān)信息(本次還書操作信息,尚未歸還圖書有關(guān)信息,讀者信息)輸入項(xiàng)目圖書書號(hào)(顧客輸入)輸出項(xiàng)目有關(guān)信息(本次還書操作信息,尚未歸還圖書信息,讀者信息)程序邏輯點(diǎn)擊退出初始對(duì)話框點(diǎn)擊退出初始對(duì)話框出錯(cuò)返回借書記錄查驗(yàn)?zāi)K出錯(cuò)返回借書記錄查驗(yàn)?zāi)K登記還書登記還書更新還書信息及顯示更新還書信息及顯示關(guān)閉對(duì)話框關(guān)閉對(duì)話框接口調(diào)用形式:CBookInDlg::ReturnBook(const_ConnectionPtrpConnection,constintMaxLBDay)傳入?yún)⒘浚簆Connection(數(shù)據(jù)庫連接指針常量) 提供數(shù)據(jù)庫連接 MaxLBDay(整型常量) 系統(tǒng)參數(shù)(借書天數(shù)上限)傳出參量:無存儲(chǔ)分派內(nèi)部變量:數(shù)據(jù)庫 m_pConnection _ConnectionPtr 數(shù)據(jù)庫連接指針 m_pRecords _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針 顧客界面 m_lBookID long 欲還圖書書號(hào) m_strLenderID CString 借閱者圖書證號(hào)顯示 m_strLender CString 借閱者姓名 m_strRBInf CString 已還圖書信息顯示 m_strNRBInf CString 未還圖書信息顯示 m_strRBNum CString 已還圖書數(shù)顯示 m_strNRBNum CString 未還圖書數(shù)顯示 內(nèi)部參數(shù) m_lCurrID long 當(dāng)前還書者讀者證號(hào) m_intRBNum int 已還圖書計(jì)數(shù) m_MaxLBDay int 借書天數(shù)上限測試要點(diǎn)模塊正常工作流程對(duì)輸入查驗(yàn),涉及輸入值合法性與合理性檢查數(shù)據(jù)庫連接異常能否做出恰當(dāng)解決數(shù)據(jù)庫數(shù)據(jù)異常時(shí)能否判斷并予以恰當(dāng)解決4.1 借書記錄查驗(yàn)?zāi)K功能查驗(yàn)借書記錄與否存在(即與否存在與指定書號(hào)相相應(yīng)借書記錄)輸入項(xiàng)目圖書書號(hào)(傳入?yún)?shù))輸出項(xiàng)目查驗(yàn)成果(返回值);查詢成果集(圖書書號(hào)、書名、狀態(tài)、出借日期)程序邏輯生成數(shù)據(jù)庫查詢語句調(diào)用數(shù)據(jù)庫查詢模塊IF操作成功IF查詢成果集不為空(存在該借書記錄)返回”記錄存在” ELSE 警告”記錄不存在”ELSE 警告”查詢失敗”返回”記錄不存在”接口調(diào)用形式:BOOLCheckBlrcord(constlongBookID)傳入?yún)⒘浚築ookID(整型常量)傳出參量:書號(hào)合法/非法標(biāo)志(BOOL型)存儲(chǔ)分派局部變量: 查詢參數(shù) vtQuiry _variant_t 查詢命令 vNull _variant_t 查詢連接 類型轉(zhuǎn)換 strQuiry CString 查詢命令類型轉(zhuǎn)換引用全局變量:m_pConnection _ConnectionPtr 使用m_pRecords _RecordsetPtr 寫(打開)測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常 合法圖書書號(hào) 返回“真”查驗(yàn)成果 不合法圖書書號(hào) 返回“假”查驗(yàn)成果,給出警告提示 數(shù)據(jù)庫數(shù)據(jù)異常 返回“假”查驗(yàn)成果,給出數(shù)據(jù)異常警告數(shù)據(jù)庫連接異常 返回“假”查驗(yàn)成果,給出數(shù)據(jù)庫連接異常警告4.2 有關(guān)信息獲取模塊功能獲取指定讀者(讀者證號(hào))借書記錄,獲取信息涉及所借圖書書名,借書日期以及所借圖書總本數(shù)。輸入項(xiàng)目讀者證號(hào)(傳入?yún)?shù));有關(guān)(借書)信息(公共變量)輸出項(xiàng)目已借圖書數(shù)(返回值)程序邏輯生成數(shù)據(jù)庫查詢命令I(lǐng)F操作成功 初始化(有關(guān)信息字符串置為空 已借圖書計(jì)數(shù)置為0)WHILE未讀至查詢成果集尾 置有關(guān)信息字符串 計(jì)數(shù)累加返回計(jì)數(shù)值ELSE 置有關(guān)信息字符串為”操作異?!狈祷亍笔?biāo)志”(-1)接口調(diào)用形式:intGetLBInf(constlongReaderID)傳入?yún)?shù):ReaderID(整型常量) 指定讀者證號(hào)傳出參數(shù):獲取有關(guān)記錄數(shù)(整型) 如發(fā)生異常,返回值置為負(fù)存儲(chǔ)分派局部變量:查詢參數(shù) vtQuiry _variant_t 查詢命令 vNull _variant_t 查詢連接 類型轉(zhuǎn)換 strQuiry CString 查詢命令類型轉(zhuǎn)換 vtemp _variant_t 查詢成果類型轉(zhuǎn)換 oleDate COleDateTime 借書時(shí)間類型轉(zhuǎn)換 記錄計(jì)數(shù) count int 計(jì)算獲取記錄數(shù)引用全局變量: m_pConnection _ConnectionPtr 使用 m_pRecords _RecordsetPtr 寫(打開、關(guān)閉) m_strNRBInf CString 寫測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正??色@取借書記錄數(shù)為零 返回成果為0,引用字符串置空可獲取借書記錄數(shù)不為零 返回記錄數(shù),并將有關(guān)信息記錄在引用字符串中 數(shù)據(jù)庫數(shù)據(jù)異常 返回異常批示,給出警告數(shù)據(jù)庫連接異常 返回異常批示,給出警告4.4還書信息記錄模塊功能記錄本次還書操作信息,涉及圖書書名,超期天數(shù)。輸入項(xiàng)目包括有關(guān)信息(書名、借書日期)查詢成果集(公共變量)輸出項(xiàng)目更新后格式化還書信息(公共變量)程序邏輯WHILE傳入查詢成果集未讀至文獻(xiàn)尾 讀取書名,置入還書信息字符串 讀取借書日期 計(jì)算超期天數(shù) 置入還書信息字符串 光標(biāo)移至下一種記錄接口調(diào)用形式:voidSaveRBInf(void)傳入?yún)?shù):無傳出參數(shù):無存儲(chǔ)分派局部變量: 類型轉(zhuǎn)換 vtemp _variant_t 查詢成果類型轉(zhuǎn)換 strExcess CString 超期天數(shù)類型轉(zhuǎn)換 計(jì)算變量 oleDate COleDateTime 借書日期 oleExcess COleDateTimeSpan 超期天數(shù) intExcess int 超期天數(shù)引用全局變量:m_pRecords _RecordsetPtr 讀(關(guān)閉記錄集) m_strRBInf CString 更新 m_MaxLBDay int 讀測試要點(diǎn)查詢成果集正常查詢成果集異常4.5 還書登記模塊功能登記還書(刪除借書記錄,更新圖書狀態(tài))輸入項(xiàng)目圖書書號(hào)(輸入?yún)?shù))輸出項(xiàng)目操作成功/失敗標(biāo)志(返回值)程序邏輯生成數(shù)據(jù)庫操作命令(更新)IF操作成功 生成數(shù)據(jù)庫操作命令(刪除) IF操作成功 返回”操作成功”返回”操作失敗”接口調(diào)用形式:BOOLDelBlrecord(constlongBookID)傳入?yún)?shù):BookID(整型常量) 返還圖書書號(hào)傳出參數(shù):操作成功/失敗標(biāo)志(BOOL值)存儲(chǔ)分派局部變量: 操作參數(shù) vtCommand _variant_t 操作命令 vRecsAffected _variant_t 操作影響參數(shù) 類型轉(zhuǎn)換 strCommand CString 操作命令類型轉(zhuǎn)換引用全局變量:m_pConnection _ConnectionPtr 使用測試要點(diǎn)數(shù)據(jù)庫連接正常圖書書號(hào)合法圖書書號(hào)不合法數(shù)據(jù)庫連接異常5圖書查詢模塊功能依照給定查詢條件,查詢數(shù)據(jù)庫,獲取圖書信息輸入項(xiàng)目查詢方式指定以及查詢核心字輸出項(xiàng)目查詢成果列表顯示初始化對(duì)話框程序邏輯初始化對(duì)話框查詢查詢生成查詢命令生成查詢命令查詢數(shù)據(jù)庫查詢數(shù)據(jù)庫顯示成果列表顯示成果列表退出退出接口調(diào)用形式:CBookQuiryDlg::QuiryBook(const_ConnectionPtrpConnection)傳入?yún)?shù):pConnection(數(shù)據(jù)庫連接指針)傳出參數(shù):無存儲(chǔ)分派內(nèi)部變量:數(shù)據(jù)庫 m_pBooks _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針 顧客界面 m_strAuthor CString 作者核心字 m_bAuthor BOOL 作者查詢選取狀態(tài) m_strBookName CString 書名核心字 m_bBookName BOOL 書名查詢選取狀態(tài) m_strPublisher CString 出版社核心字 m_bPublisher BOOL 出版社查詢選取狀態(tài) m_intYear1 int 出版時(shí)間核心字 m_intYear2 int 出版時(shí)間核心字 m_intMonth1 int 出版時(shí)間核心字 m_intMonth2 int 出版時(shí)間核心字 m_bPubTime BOOL 出版時(shí)間查詢選取狀態(tài) m_intTimeType int 出版時(shí)間查詢方式選取局部變量:查詢參數(shù) vtQuiry _variant_t 查詢命令 vNull _variant_t 查詢連接 類型轉(zhuǎn)換 strQuiry CString 查詢命令類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常 數(shù)據(jù)庫數(shù)據(jù)正常 獲得對(duì)的查詢成果并顯示 數(shù)據(jù)庫數(shù)據(jù)異常 給出警告數(shù)據(jù)庫連接異常 給出警告5.1 查詢命令生成模塊功能依照顧客界面輸入生成查詢命令輸入項(xiàng)目顧客界面輸入值(公共變量)輸出項(xiàng)目查詢命令(返回值)程序邏輯讀取各復(fù)選框值IF選中AND核心字不為空 生成查詢條件生成數(shù)據(jù)庫查詢命令返回生成查詢命令接口調(diào)用形式:CStringGetQuiryString()傳入?yún)?shù):無傳出參數(shù):查詢命令(CString)存儲(chǔ)分派局部變量: strQuiry CString 查詢命令字符串 strTemp CString 暫時(shí)字符串測試要點(diǎn)顧客輸入合理顧客輸入不合理(沒有指定查詢方式,沒有輸入查詢核心字)5.2 數(shù)據(jù)庫查詢模塊功能依照輸入查詢命令查詢數(shù)據(jù)庫輸入項(xiàng)目查詢命令(傳入?yún)?shù))輸出項(xiàng)目數(shù)據(jù)庫查詢成果(返回值);數(shù)據(jù)庫查詢成果集(公共變量)程序邏輯查詢數(shù)據(jù)庫IF操作成功 返回”操作成功”ELSE 返回”操作失敗”接口調(diào)用形式:BOOLDBQuiry(constCStringstrQuiry)傳入?yún)?shù):strQuiry(字符串型常量) 數(shù)據(jù)庫查詢命令傳出參數(shù):查詢操作成功/失敗標(biāo)志(BOOL值)存儲(chǔ)分派局部變量:查詢參數(shù) vtQuiry _varaint_t 數(shù)據(jù)庫查詢命令 vRecsAffected _variant_t 數(shù)據(jù)庫查詢連接引用全局變量:m_pConnection _ConnectionPtr 使用 m_pBooks _RecordsetPtr 讀測試要點(diǎn)數(shù)據(jù)庫連接正常輸入查詢命令合法 獲取非空查詢成果集 返回“真”返回值,查詢成果保存在查詢成果集中 獲取空查詢成果集 返回“真”返回值,查詢成果集為空輸入查詢命令不合法 返回“假”返回值,查詢成果集指針指向空,給出警告數(shù)據(jù)庫連接異常5.3 數(shù)據(jù)顯示模塊功能按一定格式列表顯示查詢成果,并依照顧客規(guī)定重排列輸入項(xiàng)目查詢成果集(傳入?yún)?shù));輸出項(xiàng)名稱(傳入?yún)?shù));查詢成果表參數(shù),涉及行數(shù)、列數(shù)(傳入?yún)?shù))輸出項(xiàng)目顧客界面顯示程序邏輯初始化(設(shè)立行數(shù)、列數(shù)、列名稱,載入輸入查詢成果集內(nèi)數(shù)據(jù))顯示列表WHILE顧客未輸入“返回” IF顧客拖動(dòng)列標(biāo)題欄 重新設(shè)立列位置 排序 刷新顯示返回接口調(diào)用形式:CListShowDlg::ShowList(const_RecordsetPtrpRecords,CString*strArray,constintcols,constintrows)傳入?yún)?shù):pRecords (數(shù)據(jù)庫查詢成果集指針) 需要顯示查詢成果 strArray (字符串?dāng)?shù)組頭指針) 顯示項(xiàng)名稱(列名) cols (整型常量) 列表列數(shù) rows (整型常量) 列表行數(shù)傳出參數(shù):無存儲(chǔ)分派內(nèi)部數(shù)據(jù):數(shù)據(jù)庫 m_pRecords _RecordsetPtr 數(shù)據(jù)庫查詢成果集 內(nèi)部參數(shù) m_strArray CString[20] 列名存儲(chǔ)數(shù)組 m_intCols int 列表列數(shù) m_intRows int 列表行數(shù) m_cltFGrid CMSFlexGrid 列表控件 m_iMouseCol int 顧客鼠標(biāo)所在列測試要點(diǎn)查詢成果正常查詢成果集為空 顯示消息框提示查詢成果集不為空 正常顯示成果列表,并依照顧客輸入調(diào)節(jié)輸出查詢成果異常 顯示警告6系統(tǒng)操作模塊功能驗(yàn)證輸入系統(tǒng)操作員賬號(hào)以及口令,完畢權(quán)限管理運(yùn)營系統(tǒng)操作對(duì)話框,依照顧客輸入調(diào)用各子模塊,完畢:圖書庫操作(瀏覽、修改、增長、刪除);讀者庫操作(瀏覽、修改、增長、刪除);數(shù)據(jù)記錄;更改口令;系統(tǒng)管理(修改系統(tǒng)設(shè)立,瀏覽、修改、增長、刪除系統(tǒng)操作員);輸入項(xiàng)目數(shù)據(jù)庫連接(傳入?yún)?shù))輸出項(xiàng)目無程序邏輯初始化初始化規(guī)定輸入賬號(hào)口令系統(tǒng)操作權(quán)限查驗(yàn)?zāi)K初始化系統(tǒng)操作對(duì)話框關(guān)閉對(duì)話框返回操作取消UNTIL輸入”返回”圖書操作模塊讀者操作模塊數(shù)據(jù)記錄模塊系統(tǒng)設(shè)立模塊數(shù)據(jù)備份數(shù)據(jù)恢復(fù)更改口令警告返回賬號(hào)口令錯(cuò)誤?接口調(diào)用形式:CSysDlg::ManageSys(const_ConnectionPtrpConnection)傳入?yún)?shù):pConnection(數(shù)據(jù)庫連接指針)傳出參數(shù):無存儲(chǔ)分派內(nèi)部數(shù)據(jù):數(shù)據(jù)庫 m_pConnection _ConnectionPtr 數(shù)據(jù)庫連接指針 子模塊 m_BookDlg CBookDlg 圖書庫操作子模塊 m_ReaderDlg CReaderDlg 讀者庫操作子模塊 m_QuiryDlg CQuiryDlg 數(shù)據(jù)記錄子模塊 m_SysSettingDlg CSysSettingDlg 系統(tǒng)設(shè)立子模塊 內(nèi)部參數(shù) m_strCurrUser CString 當(dāng)前操作者賬號(hào) m_RightLevel int 操作權(quán)限局部變量:輸入 pwdDlg CPasswordDlg 賬號(hào)口令輸入對(duì)話框測試要點(diǎn)數(shù)據(jù)庫連接正常 正常執(zhí)行過程 輸入賬號(hào)口令合法 依照權(quán)限進(jìn)行顯示控制,正常調(diào)用各子模塊 輸入賬號(hào)口令不合法 警告數(shù)據(jù)庫連接異常6.1 系統(tǒng)操作權(quán)限查驗(yàn)?zāi)K功能查驗(yàn)輸入系統(tǒng)操作員賬號(hào)以及口令與否合法,并返回合法操作員權(quán)限級(jí)別輸入項(xiàng)目系統(tǒng)操作員口令(傳入?yún)?shù))輸出項(xiàng)目操作員權(quán)限級(jí)別(返回值)程序邏輯生成數(shù)據(jù)庫查詢命令查詢數(shù)據(jù)庫IF操作成功 IF查詢成果集非空 返回權(quán)限級(jí)別 ELSE 顯示警告”非法賬號(hào)或口令” 返回-1ELSE 顯示警告”不能查詢數(shù)據(jù)庫” 返回-1接口調(diào)用形式:CheckRight(constCStringoldPwd)傳入?yún)?shù):oldPwd (字符串常量) 待查驗(yàn)系統(tǒng)操作員口令傳出參數(shù):系統(tǒng)操作權(quán)限(整型,0-7) 如口令非法,置為-1存儲(chǔ)分派局部變量:數(shù)據(jù)庫 pTemp _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針查詢參數(shù) vNull _variant_t 數(shù)據(jù)庫查詢連接 vtQuiry _variant_t 數(shù)據(jù)庫查詢命令類型轉(zhuǎn)換 strQuiry CString 查詢命令類型轉(zhuǎn)換內(nèi)部參數(shù) result int 權(quán)限級(jí)別引用全局變量:m_pConnection _ConnectionPtr 數(shù)據(jù)庫連接指針 m_strCurrUser CString 當(dāng)前操作員賬號(hào)測試要點(diǎn)數(shù)據(jù)庫連接正常數(shù)據(jù)庫數(shù)據(jù)正常 合法賬號(hào)口令 獲取相應(yīng)權(quán)限級(jí)別 非法賬號(hào)口令 返回錯(cuò)誤批示,給出警告 數(shù)據(jù)庫數(shù)據(jù)異常數(shù)據(jù)庫連接異常6.2 圖書庫操作模塊功能依照輸入提供對(duì)圖書庫瀏覽、數(shù)據(jù)修改、增長、刪除記錄等操作增長記錄時(shí),提供對(duì)生成圖書書號(hào)唯一性驗(yàn)證刪除記錄時(shí),提供對(duì)所刪除記錄有關(guān)性檢查輸入項(xiàng)目數(shù)據(jù)庫連接(傳入?yún)?shù))輸出項(xiàng)目無程序邏輯初始化(獲取數(shù)據(jù)庫連接,顯示對(duì)話框)WHILE顧客未輸入退出 IF顧客輸入”下一種” 更新當(dāng)前記錄 移動(dòng)至下一種記錄 刷新顯示 IF顧客輸入”上一種” 更新當(dāng)前記錄 移動(dòng)至上一種記錄 刷新顯示 IF顧客輸入”移動(dòng)到” 更新當(dāng)前記錄 規(guī)定輸入圖書書號(hào) IF該書號(hào)存在 移動(dòng)到指定記錄 刷新顯示 ELSE 顯示警告”該圖書書號(hào)不存在” IF顧客輸入”加入” 更新當(dāng)前記錄 規(guī)定輸入圖書書號(hào) IF該書號(hào)已存在 顯示警告”該書號(hào)已存在” ELSE 插入指定圖書書號(hào)新記錄 記錄總數(shù)加一 光標(biāo)移動(dòng)至新記錄處 IF顧客輸入”刪除” 更新當(dāng)前記錄 給出警告”擬定繼續(xù)” IF顧客確認(rèn)繼續(xù) IF該圖書借出 給出警告”刪除有關(guān)借書記錄” IF顧客確認(rèn) 刪除有關(guān)借書記錄 ELSE 中斷操作 刪除該圖書記錄 記錄總數(shù)減一 IF最后一條記錄被刪除 移動(dòng)至前一條記錄 ELSE 移動(dòng)至下一條記錄 顯示刷新更新記錄接口調(diào)用形式:CBookDlg::ManageBooks(const_ConnectionPtrpConnection)傳入?yún)?shù):pConnection(數(shù)據(jù)庫連接指針)傳出參數(shù):無存儲(chǔ)分派內(nèi)部數(shù)據(jù):數(shù)據(jù)庫 m_pConnection _ConnectionPtr 數(shù)據(jù)庫連接指針m_pRs _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針 顧客界面 m_lBookID long 當(dāng)前記錄中書號(hào)項(xiàng)m_strAuthor CString 當(dāng)前記錄中作者項(xiàng) m_strBookName CString 當(dāng)前記錄中書名項(xiàng) m_strPublisher CString 當(dāng)前記錄中出版社項(xiàng) m_uPublishYear UINT 當(dāng)前記錄中出版年項(xiàng) m_uPublishMonth UINT 當(dāng)前記錄中出版月項(xiàng) m_intStatus int 當(dāng)前記錄中狀態(tài)項(xiàng) m_fBookPrice float 當(dāng)前記錄中單價(jià)項(xiàng)m_strCurrentBook CString 當(dāng)前記錄位置顯示 m_strTotalBook CString 記錄總數(shù)顯示 內(nèi)部參數(shù) m_intPosition int 當(dāng)前記錄位置計(jì)數(shù) m_lRecordCount long 記錄總數(shù)計(jì)數(shù)測試要點(diǎn)數(shù)據(jù)庫連接正常 記錄集為空 與否工作狀態(tài)正常 記錄集非空 對(duì)各種顧客輸入響應(yīng)數(shù)據(jù)庫連接異常6.2.1 獲取圖書記錄集模塊功能獲取所有圖書記錄,置記錄總數(shù)以及當(dāng)前位置初始值輸入項(xiàng)目操作成功/失敗標(biāo)志(返回值)輸出項(xiàng)目圖書記錄集(公共變量);記錄總數(shù)(公共變量);當(dāng)前位置(公共變量)程序邏輯生成數(shù)據(jù)庫查詢命令查詢數(shù)據(jù)庫IF操作成功 返回”成功”ELSE 返回”失敗”接口調(diào)用形式:BOOLOpenRecords()傳入?yún)?shù):無傳出參數(shù):操作成功/失敗標(biāo)志(BOOL值)引用全局變量: m_pRs _RecordsetPtr 寫(打開) m_intPosition int 寫 m_lRecordCount long 寫存儲(chǔ)分派局部變量:查詢參數(shù) vNull _variant_t 查詢連接 vtQuiry _variant_t 查詢命令 類型轉(zhuǎn)換 strQuiry CString 查詢命令類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常圖書記錄集為空?qǐng)D書記錄集非空數(shù)據(jù)庫連接異常6.2.2 更新顯示模塊功能更顯當(dāng)前顯示輸入項(xiàng)目圖書記錄集(公共變量);顧客界面顯示字符串(公共變量)輸出項(xiàng)目更新后顧客界面顯示字符串(公共變量)程序邏輯逐項(xiàng)讀取記錄中數(shù)據(jù)域置入顯示字符串中IF當(dāng)前記錄為第一條 禁止”前一種”按鈕IF當(dāng)前記錄為最后一條 禁止”后一種”按鈕IF記錄總數(shù)為0 禁止”加入”以外所有按鈕刷新顯示界面接口調(diào)用形式:voidRefreshDataView()傳入?yún)?shù):無傳出參數(shù):無引用全局變量: m_pRs _RecordsetPtr 讀 m_lBookID long 寫m_strAuthor CString 寫 m_strBookName CString 寫 m_strPublisher CString 寫 m_uPublishYear UINT 寫 m_uPublishMonth UINT 寫 m_intStatus int 寫 m_fBookPrice float 寫m_strCurrentBook CString 寫 m_strTotalBook CString 寫存儲(chǔ)分派局部變量:類型轉(zhuǎn)換 vtemp _variant_t 記錄集數(shù)據(jù)域類型轉(zhuǎn)換測試要點(diǎn)記錄集正常記錄集為空記錄集非空記錄集異常6.2.3 更新當(dāng)前記錄模塊功能依照顧客界面輸入更新當(dāng)前記錄輸入項(xiàng)目顧客界面輸入,即顧客界面各顯示變量值(公共變量)輸出項(xiàng)目數(shù)據(jù)庫中更新后圖書記錄(存儲(chǔ)文獻(xiàn));操作成功/失敗標(biāo)志(返回值)程序邏輯保存當(dāng)前圖書書號(hào)讀入界面值IF書號(hào)發(fā)生變化 給出警告”不能更改圖書書號(hào)” 恢復(fù)圖書書號(hào)值生成數(shù)據(jù)庫更新語句IF更新操作成功 重新獲取記錄集 光標(biāo)移動(dòng)到原位置 返回”成功”ELSE 給出警告”操作失敗” 返回”失敗”接口調(diào)用形式:BOOLRefreshData()傳入?yún)?shù):無傳出參數(shù):操作成功/失敗標(biāo)志(BOOL值)引用全局變量:m_pConnection _ConnectionPtr 使用m_pRs _RecordsetPtr 寫 m_lBookID long 讀寫m_strAuthor CString 讀 m_strBookName CString 讀 m_strPublisher CString 讀 m_uPublishYear UINT 讀 m_uPublishMonth UINT 讀 m_intStatus int 讀 m_fBookPrice float 讀m_strCurrentBook CString 讀 m_strTotalBook CString 讀存儲(chǔ)分派局部變量:操作參數(shù) vtCommand _varaint_t 操作命令vRecsAffected _variant_t 操作連接strCommand CString 操作命令類型轉(zhuǎn)換內(nèi)部參數(shù) currBookID long 當(dāng)前圖書書號(hào)保存測試要點(diǎn)數(shù)據(jù)庫連接正常輸入數(shù)據(jù)合法合理輸入數(shù)據(jù)不合理輸入數(shù)據(jù)不合法(更改圖書書號(hào))數(shù)據(jù)庫連接異常6.2.4 獲取有關(guān)記錄模塊功能查驗(yàn)與否存在有關(guān)借書記錄輸入項(xiàng)目圖書書號(hào)(傳入?yún)?shù))輸出項(xiàng)目有關(guān)借書記錄存在/不存在標(biāo)志(返回值)程序邏輯生成數(shù)據(jù)庫查詢命令,執(zhí)行查詢IF操作成功 IF查詢成果集為空 返回”不存在” ELSE 返回”存在”ELSE 給出警告”不能查詢數(shù)據(jù)庫” 返回”存在”接口調(diào)用形式:BOOLRelatedExisted(constlongBookID)傳入?yún)?shù):BookID(整型常量) 待查驗(yàn)圖書書號(hào)傳出參數(shù):查驗(yàn)成果(BOOL值)引用全局變量: m_pConnection 使用存儲(chǔ)分派局部變量:數(shù)據(jù)庫 pLBook _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針查詢參數(shù) vtQuiry _variant_t 查詢命令 vNull _variant_t 查詢連接 類型轉(zhuǎn)換 strQuiry CString 查詢命令類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)庫連接正常 有關(guān)記錄存在 返回“真” 有關(guān)記錄不存在 返回“假”數(shù)據(jù)庫連接異常6.3 讀者庫操作模塊功能依照輸入提供對(duì)讀者庫瀏覽、數(shù)據(jù)修改、增長、刪除記錄等操作增長記錄時(shí),提供對(duì)生成讀者證號(hào)唯一性驗(yàn)證刪除記錄時(shí),提供對(duì)所刪除記錄有關(guān)性檢查輸入項(xiàng)目數(shù)據(jù)庫連接(傳入?yún)?shù))輸出項(xiàng)目無程序邏輯初始化(獲取數(shù)據(jù)庫連接,顯示對(duì)話框)WHILE顧客未輸入退出 IF顧客輸入”下一種” 更新當(dāng)前記錄 移動(dòng)至下一種記錄 刷新顯示 IF顧客輸入”上一種” 更新當(dāng)前記錄 移動(dòng)至上一種記錄 刷新顯示 IF顧客輸入”第一種” 更新當(dāng)前記錄 移動(dòng)至第一種記錄 刷新顯示 IF顧客輸入”最后一種” 更新當(dāng)前記錄 移動(dòng)至最后一種記錄 刷新顯示 IF顧客輸入”移動(dòng)到” 更新當(dāng)前記錄 規(guī)定輸入讀者證號(hào) IF該讀者證號(hào)存在 移動(dòng)到指定記錄 刷新顯示 ELSE 顯示警告”該讀者證號(hào)不存在” IF顧客輸入”加入” 更新當(dāng)前記錄 規(guī)定輸入讀者證號(hào) IF該讀者證號(hào)已存在 顯示警告”該讀者證號(hào)已存在” ELSE 插入指定讀者證號(hào)新記錄 記錄總數(shù)加一 光標(biāo)移動(dòng)至新記錄處 IF顧客輸入”刪除” 更新當(dāng)前記錄 給出警告”擬定繼續(xù)” IF顧客確認(rèn)繼續(xù) IF該讀者已借圖書信息不為空 給出警告”有未還圖書,不能刪除” ELSE 刪除該圖書記錄 記錄總數(shù)減一 IF最后一條記錄被刪除 移動(dòng)至前一條記錄 ELSE 移動(dòng)至下一條記錄 顯示刷新更新記錄接口調(diào)用形式:voidCReaderDlg::ManageReader(const_ConnectionPtrpConnection)傳入?yún)?shù):pConnection _ConnectionPtr 數(shù)據(jù)庫連接指針傳出參數(shù):無存儲(chǔ)分派內(nèi)部變量:數(shù)據(jù)庫 m_pConnection _ConnectionPtr 數(shù)據(jù)庫連接指針 m_pReaders _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針 顧客界面 m_lReaderID long 當(dāng)前記錄中讀者證號(hào)項(xiàng)m_strAttatchment CString 當(dāng)前記錄中聯(lián)系辦法項(xiàng)m_strReaderName CString 當(dāng)前記錄中讀者姓名項(xiàng)m_strRelateInf CString 當(dāng)前記錄有關(guān)信息顯示m_strPosition CString 當(dāng)前記錄位置顯示m_strTotalNum CString 記錄總數(shù)顯示 內(nèi)部數(shù)據(jù) m_intPosition int 當(dāng)前記錄位置計(jì)數(shù)m_lReaderNum long 記錄總數(shù)計(jì)數(shù)測試要點(diǎn)數(shù)據(jù)庫連接正常 程序正常運(yùn)營流程,依照輸入調(diào)用各子模塊數(shù)據(jù)庫連接異常6.3.1 獲取讀者記錄集模塊功能獲取所有讀者記錄輸入項(xiàng)目無輸出項(xiàng)目操作成功/失敗標(biāo)志(返回值);讀者記錄集(公共變量)程序邏輯生成數(shù)據(jù)庫查詢命令查詢數(shù)據(jù)庫IF操作成功 返回”成功”ELSE 返回”失敗”接口調(diào)用形式:BOOLOpenRs()傳入?yún)?shù):無傳出參數(shù):操作成功/失敗標(biāo)志(BOOL值)引用全局變量: m_pReaders _RecordsetPtr 寫 m_intPosition int 寫 m_lReaderNum long 寫存儲(chǔ)分派局部變量:查詢參數(shù) bstrQuery _bstr_t 查詢命令vtNull _variant_t 查詢連接測試要點(diǎn)數(shù)據(jù)庫連接正常 記錄集為空 返回“真”,記錄集為空,位置計(jì)數(shù)與記錄總數(shù)為0 記錄集非空 返回“真”,記錄集非空,位置計(jì)數(shù)為1數(shù)據(jù)庫連接異常6.3.2 更新顯示模塊功能更新當(dāng)前記錄顯示輸入項(xiàng)目記錄集當(dāng)前記錄各項(xiàng)值(公共變量);未更新顧客界面顯示字符串(公共變量)輸出項(xiàng)目更新后顧客界面顯示字符串(公共變量)程序邏輯逐項(xiàng)讀取記錄中數(shù)據(jù)域置入顯示字符串中IF當(dāng)前記錄為第一條 禁止”前一種”按鈕、”第一種”按鈕IF當(dāng)前記錄為最后一條 禁止”后一種”按鈕、”最后一種”按鈕IF記錄總數(shù)為0 禁止”加入”以外所有按鈕調(diào)用有關(guān)信息獲取模塊,置有關(guān)借書信息字符串刷新顯示界面接口調(diào)用形式:voidRefreshDataView()傳入?yún)?shù):無傳出參數(shù):無引用全局變量: m_pReaders _RecordsetPtr 讀 m_lReaderID long 寫 m_strReaderName CString 寫 m_strAttatchment CString 寫 m_lReaderNum long 讀 m_intPosition long 讀 m_strTotalNum CString 寫 m_strPosition CString 寫 m_strRelatedInf CString 寫存儲(chǔ)分派局部變量:類型轉(zhuǎn)換 vtemp _variant_t 記錄數(shù)據(jù)域類型轉(zhuǎn)換測試要點(diǎn)數(shù)據(jù)集正常 獲取相應(yīng)數(shù)據(jù)項(xiàng),并顯示數(shù)據(jù)集異常 給出警告6.3.3 更新當(dāng)前記錄模塊功能依照顧客界面輸入,更新當(dāng)前記錄各數(shù)據(jù)域輸入項(xiàng)目顧客界面編輯變量值(公共變量)輸出項(xiàng)目更新后數(shù)據(jù)域值(存儲(chǔ)文獻(xiàn));操作成功/失敗標(biāo)志(返回值)程序邏輯保存當(dāng)前讀者證號(hào)讀入界面值IF讀者證號(hào)發(fā)生變化 給出警告”不能更改讀者證號(hào)” 恢復(fù)讀者證號(hào)值生成數(shù)據(jù)庫更新語句IF更新操作成功 重新獲取記錄集 光標(biāo)移動(dòng)到原位置 返回”成功”ELSE 給出警告”操作失敗” 返回”失敗”接口調(diào)用形式:BOOLRefreshData()傳入?yún)?shù):無傳出參數(shù):操作成功/失敗標(biāo)志(BOOL值)引用全局變量: m_pConnection _ConnectionPtr 使用m_lReaderID long 讀寫 m_strReaderName CString 讀 m_strAttatchment CString 讀存儲(chǔ)分派局部變量:操作參數(shù) vtCommand _varaint_t 操作命令 vRecsAffected _variant_t 操作成果影響 類型轉(zhuǎn)換 strCommand CString 操作命令類型轉(zhuǎn)換 數(shù)據(jù)保存 CurrRID long 當(dāng)前記錄中讀者證號(hào)保存測試要點(diǎn)數(shù)據(jù)庫連接正常 輸入數(shù)據(jù)合法 依照輸入數(shù)據(jù)更新數(shù)據(jù)庫記錄 輸入數(shù)據(jù)不合法 給出警告數(shù)據(jù)庫連接異常6.3.4 獲取有關(guān)記錄模塊功能獲取有關(guān)借書記錄輸入項(xiàng)目讀者證號(hào)(傳入?yún)?shù))輸出項(xiàng)目操作成功/失敗標(biāo)志(返回值);有關(guān)記錄信息(公共變量)程序邏輯生成數(shù)據(jù)庫查詢命令I(lǐng)F操作成功 初始化(有關(guān)信息字符串置為空 已借圖書計(jì)數(shù)置為0)WHILE未讀至查詢成果集尾 置有關(guān)信息字符串 計(jì)數(shù)累加 置已借圖書數(shù)字符串返回”操作成功”ELSE 置有關(guān)信息字符串為”操作異?!狈祷亍辈僮魇 苯涌谡{(diào)用形式:BOOLGetRelatedInf(constlongReaderID)傳入?yún)?shù):ReaderID(整型常量) 指定讀者證號(hào)傳出參數(shù):操作成功/失敗標(biāo)志(BOOL值)引用全局變量: m_pConnection _ConnectionPtr 使用 m_strRelatedInf CString 寫存儲(chǔ)分派局部變量:數(shù)據(jù)庫 pBLent _RecordsetPtr 數(shù)據(jù)庫查詢成果集指針 查詢參數(shù) vtNull _variant_t 查詢連接 vQuiry _variant_t 查詢命令 類型轉(zhuǎn)換 strQuiry CString 查詢命令類型轉(zhuǎn)換 vtemp _variant_t 數(shù)據(jù)域讀取類型轉(zhuǎn)換 oleDate COleDateTime 時(shí)間項(xiàng)讀取類型轉(zhuǎn)換 strDate CString 時(shí)間項(xiàng)賦值類型轉(zhuǎn)換 內(nèi)部參數(shù) count int 記錄計(jì)數(shù)測試要點(diǎn)數(shù)據(jù)庫連接正常 查詢成果集為空 返回“真”,信息字符串置為空 查詢成果集非空 返回“真”,信息字符串記錄查詢成果數(shù)據(jù)庫連接異常 返回“假”,信息字符串置為異常信息6.4數(shù)據(jù)記錄模塊功能依照輸入規(guī)定記錄數(shù)據(jù)庫中各種信息,生成成果列表顯示輸入項(xiàng)目數(shù)據(jù)庫連接(傳入?yún)?shù))輸出項(xiàng)目無程序邏輯初始化(獲取數(shù)據(jù)庫連接,顯示對(duì)話框)WHILE顧客未輸入”返回” 顯示控制 IF顧客輸入”開始” 禁止”開始”按鈕 生成數(shù)據(jù)庫查詢命令 查詢數(shù)據(jù)庫 顯示查詢成果 使能”開始”按鈕關(guān)閉對(duì)話框接口調(diào)用形式:voidCQuiryDlg::QuiryInf(const_ConnectionPtrpConnection)傳入?yún)?shù):pConnection(數(shù)據(jù)庫連接指針)傳出參數(shù):無存儲(chǔ)分派內(nèi)部數(shù)據(jù):數(shù)據(jù)庫 m_pResults _RecordsetPtr 數(shù)據(jù)庫連接指針 m_pConnection _ConnectionPtr 數(shù)據(jù)庫查詢成果集指針 顧客界面 m_bAddress BOOL 聯(lián)系辦法條件核選狀態(tài) m_bAuthor BOOL 作者條件核選狀態(tài)m_bBookID BOOL 圖書書號(hào)條件核選狀態(tài)m_bBookName BOOL 書名條件核選狀態(tài)m_bBooks BOOL 圖書有關(guān)條件核選狀態(tài)m_bOutdate BOOL 借書日期條件核選狀態(tài)m_bPrice BOOL 單價(jià)條件核選狀態(tài)m_bPublisher BOOL 出版社條件核選狀態(tài)m_bPubtime BOOL 出版時(shí)間條件核選狀態(tài)m_bReaderID BOOL 讀者證號(hào)條件核選狀態(tài)m_bReaderName BOOL 讀者姓名條件核選狀態(tài)m_bReaders BOOL 讀者有關(guān)條件核選狀態(tài)m_bStatus BOOL 圖書狀態(tài)條件核選狀態(tài)m_b2Address BOOL 聯(lián)系辦法輸出核選狀態(tài) m_b2Author BOOL 作者輸出核選狀態(tài)m_b2BookID BOOL 圖書書號(hào)輸出核選狀態(tài)m_b2BookName BOOL 書名條件輸出狀態(tài)m_b2Books BOOL 圖書有關(guān)輸出核選狀態(tài)m_b2Outdate BOOL 借書日期輸出核選狀態(tài)m_b2Price BOOL 單價(jià)輸出核選狀態(tài)m_b2Publisher BOOL 出版社輸出核選狀態(tài)m_b2Pubtime BOOL 出版時(shí)間輸出核選狀態(tài)m_b2ReaderID BOOL 讀者證號(hào)輸出核選狀態(tài)m_b2ReaderName BOOL 讀者姓名輸出核選狀態(tài)m_b2Readers BOOL 讀者有關(guān)輸出核選狀態(tài)m_b2Status BOOL 圖書狀態(tài)輸出核選狀態(tài) m_comAddress CString 聯(lián)系辦法條件選取m_comAuthor CString 作者條件選取 m_comBookID CString 圖書書號(hào)條件選取m_comBookName CString 書名條件選取m_comOutdate CString 借書日期條件選取m_comPrice CString 圖書單價(jià)條件選取 m_comPublisher CString 出版社條件選取m_comPubtime CString 出版時(shí)間條件選取m_comReaderID CString 讀者證號(hào)條件選取m_comReaderName CString 讀者姓名條件選取m_comStatus CString 圖書狀態(tài)條件選取 m_strAddress CString 聯(lián)系辦法條件變量 m_oleOutdate1 COleDateTime 借書日期條件變量 m_oleOutdate2 COleDateTime 借書日期條件變量(用于介于選項(xiàng)) m_lReaderID long 讀者證號(hào)條件變量m_strReaderName CString 讀者姓名條件變量m_strAuthor CString 圖書作者條件變量m_strBookName CString 圖書書名條件變量m_lBookID long 圖書書號(hào)條件變量m_fPrice float 圖書單價(jià)條件變量 m_intPubMonth1 UINT 出版時(shí)間條件變量 m_intPubMonth2 UINT 出版時(shí)間條件變量 m_intPubYear1 UINT 出版時(shí)間條件變量 m_intPubYear2 UINT 出版時(shí)間條件變量m_intType int 出版時(shí)間條件類型m_strPublisher CString 出版社條件變量內(nèi)部參數(shù) m_intCols int 輸出列計(jì)數(shù) m_strArray CString[20] 輸出列名稱記錄局部變量 :暫時(shí)參數(shù) strQuiry CString 查詢命令字符串 RowNum long 列表行數(shù)計(jì)數(shù)測試要點(diǎn)數(shù)據(jù)庫連接正常 模塊正常流程,對(duì)顧客界面控制,對(duì)子模塊調(diào)用 數(shù)據(jù)庫連接異常 給出警告6.4.1 查詢命令生成模塊功能依照顧客界面輸入生成查詢命令,并提供一定對(duì)輸入數(shù)據(jù)檢查輸入項(xiàng)目顧客界面各個(gè)輸入變量(公共變量)輸出項(xiàng)目數(shù)據(jù)庫查詢命令(返回值)程序邏輯讀入界面設(shè)立生成查詢條件生成輸出項(xiàng)生成查詢語句返回查詢語句接口調(diào)用形式:CStringGetQuiryString()傳入?yún)?shù):無傳出參數(shù):查詢命令(字符串)引用全局變量: m_strArray CString[20] 寫 m_intCols int 寫 讀取顧客界面輸入 m_bBookID m_comBookID m_lBookID m_bBookName m_comBookName m_strBookNamem_bAuthor m_comAuthor m_strAuthorm_bPrice m_fPricem_bStatus m_comStatusm_bPublisher m_comPublisher m_strPublisher m_bPubtime m_comPubtime m_intPubYear1 m_intPubMonth1 m_intPubYear2 m_intPubMonth2 m_intType m_bReaderID m_comReaderID m_lReaderID m_bReaderName m_comReaderName m_strReaderName m_bAddress m_comAddress m_strAddress m_bOutdate m_comOutdate m_oleOutdate1 m_oleOutdate2 m_b2BookID m_b2BookName m_b2Author m_b2Price m_b2Publisher m_b2Status m_b2Pubtime m_b2ReaderID m_b2ReaderName m_b2Address m_b2Books m_b2Readers m_b2Outdate存儲(chǔ)分派局部變量:命令生成 strQuiry CString 查詢命令字符串 格式轉(zhuǎn)換 strTemp CString 數(shù)據(jù)格式轉(zhuǎn)換測試要點(diǎn)顧客輸入數(shù)據(jù)合理合法 生成對(duì)的數(shù)據(jù)庫查詢語句顧客輸入數(shù)據(jù)不合理或不合法 給出警告6.4.2 數(shù)據(jù)庫查詢模塊功能依照輸入數(shù)據(jù)庫查詢命令,查詢數(shù)據(jù)庫數(shù)據(jù),生成查詢成果集輸入項(xiàng)目查詢命令(傳入?yún)?shù))輸出項(xiàng)目查詢成功/失敗標(biāo)志(返回值);查詢成果集(公共變量)程序邏輯查詢數(shù)據(jù)庫IF操作成功 返回”操作成功”ELSE 返回”操作失敗”接口調(diào)用形式:BOOLGetQuiryResult(constCStringstrQuiry)傳入?yún)?shù):strQuiry(字符串常量) 查詢命令傳出參數(shù):查詢成功/失敗標(biāo)志(BOOL值)引用全局變量:m_pResults _RecordsetPtr 寫(打開)存儲(chǔ)分派局部變量:查詢參數(shù) vtQuiry _variant_t 查詢命令 vNull _variant_t 查詢連接測試要點(diǎn)數(shù)據(jù)庫連接正常 查詢命令合法 獲取成果集為空 返回“真”,成果集為空 獲取成果集非空 返回“假”,成果集記錄相應(yīng)成果 查詢命令非法 返回“假”,給出警告數(shù)據(jù)庫連接異常6.4.3 數(shù)據(jù)顯示模塊功能將查詢成果集列表顯示,并依照輸入調(diào)節(jié)格式輸入項(xiàng)目查詢成果集(傳入?yún)?shù));輸出項(xiàng)名稱(傳入?yún)?shù));查詢成果表參數(shù),涉及行數(shù)、列數(shù)(傳入?yún)?shù))輸出項(xiàng)目顧客界面顯示程序邏輯初始化(設(shè)立行數(shù)、列數(shù)、列名稱,載入輸入查詢成果集內(nèi)數(shù)據(jù))顯示列表WHILE顧客未輸入“返回” IF顧客拖動(dòng)列標(biāo)題欄 重新設(shè)立列位置 排序 刷新顯示返回接口調(diào)用形式:CListShowDlg::ShowList(const_RecordsetPtrpRecords,CString*strArray,constintcols,constintrows)傳入?yún)?shù):pRecords (數(shù)據(jù)庫查詢成果集指針) 需要顯示查詢成果 strArray (字符串?dāng)?shù)組頭指針) 顯示項(xiàng)名稱(列名) cols (整型常量) 列表列數(shù) rows (整型常量) 列表行數(shù)傳出參數(shù):無存儲(chǔ)分派內(nèi)部數(shù)據(jù):數(shù)據(jù)庫 m_pRecords _RecordsetPtr 數(shù)據(jù)庫查詢成果集 內(nèi)部參數(shù) m_strArray CString[20] 列名存儲(chǔ)數(shù)組 m_intCols int 列表列數(shù) m_intRows int 列表行數(shù) m_cltFGrid CMSFlexGrid 列表控件 m_iMouseCol int 顧客鼠標(biāo)所在列測試要點(diǎn)查詢成果正常查詢成果集為空 顯示消息框提示查詢成果集不為空 正常顯示成果列表,并依照顧客輸入調(diào)節(jié)輸出查詢成果異常 顯示警告6.5系統(tǒng)設(shè)立模塊功能提供對(duì)系統(tǒng)操作員庫瀏覽,系統(tǒng)設(shè)立更改輸入項(xiàng)目數(shù)據(jù)庫連接(傳入?yún)?shù))輸出項(xiàng)目無程序邏輯初始化(獲取數(shù)據(jù)庫連接,獲取系統(tǒng)操作員記錄集,獲取當(dāng)前系統(tǒng)設(shè)立,顯示對(duì)話框)WHILE顧客為輸入”返回” IF顧客輸入”保存設(shè)立” 讀取界面值 生成更新語句,更新數(shù)據(jù)庫 IF顧客輸入”下一種” 更新當(dāng)前系統(tǒng)操作員記錄 移至下一種記錄 刷新顯示 IF顧客輸入”上一種” 更新當(dāng)前系統(tǒng)操作員記錄 移至上一種記錄 刷新顯示 IF顧客輸入”加入” 更新當(dāng)前系統(tǒng)操作員記錄 插入空新記錄 移至插入新記錄處 顯示刷新 IF顧客輸入”刪除” 更新當(dāng)前系統(tǒng)操作員記錄 給出警告”與否繼續(xù)” IF顧客確認(rèn)刪除” IF規(guī)定刪除不是當(dāng)前操作員賬號(hào) 刪除當(dāng)前記錄 ELSE 給出警告”不能刪除當(dāng)前操作員”關(guān)閉對(duì)話框接口調(diào)用形式:voidCSysSettingDl

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論