基于ado的電子圖書采購管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁
基于ado的電子圖書采購管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁
基于ado的電子圖書采購管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁
基于ado的電子圖書采購管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁
基于ado的電子圖書采購管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

基于ado的電子圖書采購管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

現(xiàn)有的圖書管理系統(tǒng)在獲取電子圖書方面存在以下問題:電子圖書的采購不能統(tǒng)一、分布和異構(gòu),以實(shí)現(xiàn)電子圖書的統(tǒng)一采購和重新理解。電子圖書不能進(jìn)入數(shù)據(jù)庫。無法對(duì)當(dāng)前版本進(jìn)行全面的統(tǒng)計(jì)分析。2嵌入式電子圖書采購系統(tǒng)的主要功能和設(shè)計(jì)理念2.1系統(tǒng)功能模塊嵌入式電子圖書采購系統(tǒng)能較好地解決上述問題,其主要功能如下:(1)充分利用網(wǎng)絡(luò)環(huán)境,實(shí)現(xiàn)不同平臺(tái)、不同架構(gòu)下的電子圖書統(tǒng)一查重、分布驗(yàn)收。(2)對(duì)電子圖書與紙質(zhì)圖書現(xiàn)狀進(jìn)行全面的統(tǒng)計(jì)分析,為采購決策提供已購圖書的相關(guān)信息。(3)嵌入到圖書管理系統(tǒng),采購人員在電子圖書采購時(shí)能夠詳細(xì)了解電子圖書對(duì)應(yīng)的紙質(zhì)圖書館藏、借閱等信息,對(duì)借閱率高、復(fù)本數(shù)不足的紙質(zhì)圖書采購電子圖書。(4)提供.txt、.xls、.dbf、.mdb等格式的數(shù)據(jù)導(dǎo)入、導(dǎo)出接口,方便書目數(shù)據(jù)的交換。(5)能夠?qū)崿F(xiàn)電子圖書采購的流程化和自動(dòng)化管理,促進(jìn)電子圖書采購業(yè)務(wù)從手工模式向自動(dòng)化、數(shù)字化辦公模式的轉(zhuǎn)化。MELINETSⅡ作為現(xiàn)代電子化圖書館信息網(wǎng)絡(luò)系統(tǒng),其在處理紙質(zhì)圖書采購方面具有強(qiáng)大優(yōu)勢(shì),但無法提供電子圖書采購中的統(tǒng)一查重、分布驗(yàn)收等功能。因此,有必要基于MELINETSⅡ開發(fā)一套較完善的嵌入式電子圖書采購系統(tǒng),其功能模塊如圖1所示:嵌入式電子圖書館采購系統(tǒng)提供的功能包括:訂單管理、數(shù)據(jù)管理、訂購圖書、訂單驗(yàn)收、統(tǒng)計(jì)分析。數(shù)據(jù)管理包括數(shù)據(jù)導(dǎo)入和數(shù)據(jù)導(dǎo)出功能;訂購圖書包括圖書查重和圖書采購功能。2.2嵌入式電子圖書采購系統(tǒng)的設(shè)計(jì)圖書館擁有的電子圖書數(shù)據(jù)庫分布在不同的服務(wù)器上,其后臺(tái)數(shù)據(jù)庫類型也不盡相同,因此系統(tǒng)在技術(shù)實(shí)現(xiàn)上需要解決三個(gè)關(guān)鍵問題:(1)數(shù)據(jù)分布:解決分布在不同服務(wù)器上數(shù)據(jù)庫的連接。(2)系統(tǒng)異構(gòu):解決基于不同后臺(tái)數(shù)據(jù)庫下數(shù)據(jù)的讀取、更新、寫入。(3)數(shù)據(jù)同步:需要能夠適應(yīng)電子圖書數(shù)據(jù)庫的更新。解決思路:ADO是應(yīng)用層級(jí)的數(shù)據(jù)訪問模型,是建立在OLEDB之上的高性能的、統(tǒng)一的數(shù)據(jù)訪問對(duì)象,但對(duì)Oracle的訪問卻受限于客戶端,不利于基于Oracle的開發(fā)。ODAC是存取Oracle關(guān)系數(shù)據(jù)庫系統(tǒng)的訪問模型,用于免安裝Oracle客戶端的應(yīng)用軟件的開發(fā)。在網(wǎng)絡(luò)環(huán)境中,通過ADO與ODAC對(duì)象連接分布、異構(gòu)的電子圖書數(shù)據(jù)庫,再通過ADO與ODAC對(duì)象調(diào)用編寫在后臺(tái)數(shù)據(jù)庫下的存儲(chǔ)過程,解決數(shù)據(jù)異構(gòu)下的同步,實(shí)現(xiàn)數(shù)據(jù)整合。嵌入式電子圖書采購系統(tǒng)的流程設(shè)計(jì)如圖2所示。嵌入式電子圖書采購系統(tǒng)提供系統(tǒng)初始、定義訂單、導(dǎo)入書目、圖書采購、圖書驗(yàn)收、統(tǒng)計(jì)分析等功能。(1)系統(tǒng)初始功能:通過調(diào)用存儲(chǔ)過程讀取EBOOK1、EBOOK2、……、EBOOKn表中已購電子圖書書目信息寫入到EBOOK中的ALLEBOOK表,形成已購電子圖書總庫。(2)定義訂單功能:定義訂單編號(hào)、訂單名稱、訂單描述等信息,并保存到ACPMANAGER表中。(3)導(dǎo)入書目功能:把電子圖書供應(yīng)商提供的預(yù)購電子書目導(dǎo)入到電子圖書訂購表INPUTEBOOK中。(4)圖書訂購功能:對(duì)某一編號(hào)的訂單按查重規(guī)則查重,更新INPUTEBOOK表中數(shù)據(jù)的查重標(biāo)識(shí)位,形成去重后的可訂購數(shù)據(jù);在可訂購數(shù)據(jù)中選購圖書,選購時(shí)應(yīng)結(jié)合對(duì)應(yīng)的MELINETSⅡ中紙質(zhì)圖書的冊(cè)數(shù)與借閱次數(shù)等信息;訂購?fù)瓿珊笊蒑YRETABLE驗(yàn)收數(shù)據(jù)、報(bào)供應(yīng)商訂單數(shù)據(jù)。查重規(guī)則是:首先,將某訂單下的INPUTEBOOK數(shù)據(jù)與ALLEBOOK數(shù)據(jù)中ISBN字段重復(fù)的訂單數(shù)據(jù)去掉;其次,再將該訂單下的INPUTEBOOK數(shù)據(jù)與MELINETSⅡ中ISBN字段進(jìn)行比較,去掉MELINETSⅡ中該圖書復(fù)本數(shù)超過2冊(cè)以上且2年內(nèi)借閱率低于10次的訂單數(shù)據(jù)。(5)圖書驗(yàn)收功能:讀取MYRETABLE表中某訂單下的ISBN字段值,把它與電子圖書數(shù)據(jù)庫中圖書書目表的ISBN字段值對(duì)比,如ISBN在電子圖書書目表中存在則表示圖書已安裝,并修改驗(yàn)收標(biāo)識(shí)位,形成驗(yàn)收?qǐng)?bào)告。(6)統(tǒng)計(jì)分析功能:對(duì)MELINETSⅡ與EBOOK中的圖書數(shù)據(jù)進(jìn)行整體統(tǒng)計(jì)、分析,并形成報(bào)表,供決策層參考。3嵌入式電子圖書采購系統(tǒng)的實(shí)現(xiàn)3.1數(shù)據(jù)觸發(fā)器創(chuàng)建(1)在MELINETSⅡ后臺(tái)數(shù)據(jù)庫Oracle10g下創(chuàng)建一個(gè)EBOOK方案,在EBOOK方案中創(chuàng)建表名,如圖3所示:ACPMANAGER是訂單管理表,用于保存用戶訂單的相關(guān)信息。ALLEBOOK是電子圖書數(shù)據(jù)的總庫表,用于保存已購電子圖書書目數(shù)據(jù)。系統(tǒng)首次運(yùn)行時(shí),其“初始功能”會(huì)把各電子圖書數(shù)據(jù)庫中已購圖書的ISBN、書名等信息讀入到該表中,形成當(dāng)前已購電子圖書總書目;在“圖書驗(yàn)收”功能中,系統(tǒng)把訂單中已購電子圖書信息寫入到該表中,以保證圖書書目數(shù)據(jù)的完整。INPUTEBOOK是電子圖書訂購表,用于保存訂單書目數(shù)據(jù)。在INPUTEBOOK中,設(shè)置查重、訂購、報(bào)送等狀態(tài)位字段,通過查閱、統(tǒng)計(jì)狀態(tài)位字段的值,能清楚地了解每條書目數(shù)據(jù)運(yùn)行狀態(tài),輕松掌握訂單訂購進(jìn)度。通過觸發(fā)器生成表INPUTEBOOK的主鍵值,用于數(shù)據(jù)更新與索引。觸發(fā)器創(chuàng)建實(shí)例如下:CREATEORREPLACETRIGGER“EBOOK”.”TRI_INPUTEBOOK_INID”BEFORE//數(shù)據(jù)更新前觸發(fā)INSERTON“INPUTEBOOK”FOREACHROW//每插入一條記錄都會(huì)觸發(fā)一次beginselectTo_Char(Seq_INPUTEBOOK_ID.nextval)into:new.INIDfromdual;//生成唯一的INID值end;//Seq_INPUTEBOOK_ID為序列(2)在各電子圖書數(shù)據(jù)庫中創(chuàng)建MYRETABLE驗(yàn)收表,用于分布驗(yàn)收,如圖4所示:EBOOK1、EBOOK2、……、EBOOKn分別表示電子圖書數(shù)據(jù)庫,MYRETABLE是創(chuàng)建在電子圖書數(shù)據(jù)庫內(nèi)的驗(yàn)收表,該表中的ACPID字段保存用于訂單ID;ISBN字段用于保存圖書的ISBN;RESTATE字段用于保存圖書的驗(yàn)收狀態(tài)。系統(tǒng)在導(dǎo)出訂單時(shí),把INPUTEBOOK中訂購狀態(tài)與報(bào)送狀態(tài)為True的數(shù)據(jù)的ISBN、ACPID值提交到MYRETABLE表中,驗(yàn)收時(shí),采購人員通過統(tǒng)計(jì)MYRETABLE表中RESTATE字段的值,驗(yàn)收電子圖書到書情況。通過語句來更新RESTATE值,如果驗(yàn)收狀態(tài)值為1,表示電子圖書已安裝到庫。其操作語句如下:UPDATEMYRETABLESETRESTATE=’1’WHERE(ACPID=’訂單號(hào)’)AND(REPLACE(ISBN,’-’,’’)IN(SELECTREPLACE(ISBN,’-’,’’)FROM書目表))。REPLACE為函數(shù),通過使用該通函數(shù),去掉ISBN中的‘-’字符,確保ISBN不受‘-’字符的影響。3.2數(shù)據(jù)庫的配置不同的電子圖書數(shù)據(jù)庫分布在不同的服務(wù)器上,其后臺(tái)數(shù)據(jù)庫也不盡相同,且受到圖書館業(yè)務(wù)發(fā)展與調(diào)整的影響,安裝電子圖書數(shù)據(jù)庫的服務(wù)器IP變更的頻率很高。如何使嵌入式電子圖書采購系統(tǒng)靈活適應(yīng)運(yùn)行環(huán)境的變化顯得尤為突出,系統(tǒng)通過引入配置文件的方式來解決。在嵌入式電子圖書采購系統(tǒng)根目錄下,手動(dòng)創(chuàng)建Netdata.ini文件,用于設(shè)置數(shù)據(jù)連接參數(shù),每一行代表一個(gè)數(shù)據(jù)庫相關(guān)信息。在文件中第一行添加Oracle數(shù)據(jù)庫信息,如:“9:1521:orcl”的字符串,9為服務(wù)器IP地址,1521為Oracle端口,orcl為服務(wù)名。第二行添加SQLServer數(shù)據(jù)庫信息,如:9。其他數(shù)據(jù)庫依次配置。(1)通過ODAC中的對(duì)象OraSession實(shí)現(xiàn)Oracle的連接。配置ODAC對(duì)象OraSession參數(shù),實(shí)現(xiàn)對(duì)Oracle數(shù)據(jù)庫的連接。連接配置如下:Memo1.Clear;//清空文本內(nèi)容Memo1.Lines.LoadFromFile(GetCurrentDir+′/NETDATA.INI′);//讀取NETDATA.INI文件內(nèi)容到Memo1中ORCLSERVER:=Memo1.Lines.Strings;//讀取NETDATA.INI第一行字符串OraSession1.Options.Net:=True;//使用TOraSession中的NET方式連接OraSession1.ConnectString:=′USERNAME/PWD@′+ORCLSERVER;//TOraSession連接字符串Orasession1.Server:=ORCLSERVER;//數(shù)據(jù)庫服務(wù)器對(duì)象Orasession1.Username:=′USERNAME′;//登錄數(shù)據(jù)的用戶Orasession1.Password:=′PWD′;//登錄數(shù)據(jù)用戶的密碼Orasession1.Connected:=True;//連接處于激活狀態(tài)(2)通過對(duì)象TADOQuery中的ConnectionString值實(shí)現(xiàn)SQLServer的連接。連接配置如下:Memo2.Clear;//清空文本內(nèi)容Memo2.Lines.LoadFromFile(GetCurrentDir+′/NETDATA.INI′);讀取NETDATA.INI文件內(nèi)容到Memo2中Serverip1:=Memo1.Lines.Strings;//讀取第一個(gè)SQLServer服務(wù)器的IP地址ADOQuery1.ConnectionString:=′Provider=SQLOLEDB.1;Password=ssreader123;PersistSecurityInfo=True;UserID=ssreader;DataSource=′+serverip1;//連接SQLServer數(shù)據(jù)庫Memo1,Memo2為Memo類,用于讀取Netdata.ini文件中的內(nèi)容。其他數(shù)據(jù)庫依次通過讀取文件Netdata.ini中的數(shù)據(jù)庫參數(shù)實(shí)現(xiàn)連接。3.3電子圖書存儲(chǔ)過程環(huán)嵌入式電子圖書采購系統(tǒng)需要讀取及處理分布、異構(gòu)環(huán)境下的圖書數(shù)據(jù),它們的后臺(tái)數(shù)據(jù)庫不盡相同,且數(shù)據(jù)更新的頻率很高。為了適應(yīng)環(huán)境的變化,系統(tǒng)應(yīng)通過修改存儲(chǔ)過程來完成自身的更新,減少對(duì)程序的依賴,提高軟件的適應(yīng)性和可靠性。存儲(chǔ)過程是已經(jīng)編譯好、并經(jīng)過優(yōu)化的放置于數(shù)據(jù)庫服務(wù)器端的SQL語句,可供應(yīng)用程序直接調(diào)用。(1)當(dāng)電子圖書數(shù)據(jù)庫版本更新時(shí),只需修改電子圖書數(shù)據(jù)庫下的存儲(chǔ)過程,軟件部分不需要進(jìn)行修改。(2)存儲(chǔ)過程利用高性能數(shù)據(jù)庫服務(wù)器的處理能力,使得SQL語句的執(zhí)行加快,執(zhí)行完畢后僅返回執(zhí)行結(jié)果,有效減少網(wǎng)絡(luò)的通信流量,提高了分布、異構(gòu)系統(tǒng)的工作效率。在Delphi7.0中,利用ODAC中的OraStoredProc組件調(diào)用Oracle數(shù)據(jù)庫中的存儲(chǔ)過程,利用ADO中的TADOStoredProc組件調(diào)用SQLServer數(shù)據(jù)中的存儲(chǔ)過程。4查重結(jié)果顯示,u3000論基于MELINETSⅡ嵌入式電子圖書采購系統(tǒng),整合了超星電子圖書、書生之家電子圖書、方正Apabi電子圖書的數(shù)據(jù)信息,共享了MELINETSⅡ紙質(zhì)圖書的館藏、借閱信息,實(shí)現(xiàn)了合理科學(xué)地采購電子圖書。(1)工作中能夠查重并去掉訂單中大量重復(fù)的電子圖書數(shù)據(jù),便于采購人員選購圖書。訂單查重后狀態(tài)欄顯示內(nèi)容如圖4所示:在“電子圖書查重”功能中,系統(tǒng)狀態(tài)欄中顯示查重結(jié)果,查重電子圖書47785冊(cè),其中重復(fù)6151冊(cè)。由此可見,某訂單中的電子圖書重復(fù)率高達(dá)12.8%。(2)通過嵌入MELINETSⅡ,詳細(xì)列出電子圖書對(duì)應(yīng)的紙質(zhì)圖書館藏、流通等信息,為采購人員采購電子圖書提供參考。電子圖書訂購操作界面如圖5所示:在“選擇訂購訂單”中選擇編號(hào)“001”,訂單名稱為“超星電子圖書綜合類”,點(diǎn)擊“訂單瀏覽”按鍵,該訂單下去重后的數(shù)據(jù)會(huì)在“未重電子圖書”欄中列出,供訂購使用。在“未重電子圖書”數(shù)據(jù)中雙擊ISBN為“978-7-302-14984-2”圖書,操作界面的右側(cè)“詳細(xì)信息”處會(huì)顯示出該電子圖書對(duì)應(yīng)的MELINETSⅡ紙質(zhì)圖書有6冊(cè)、借閱61次等信息,點(diǎn)擊“訂購”按鈕,完成對(duì)該種電子圖書的采購。(3)能夠?qū)ELINETSⅡ和EBOOK中的圖書信息進(jìn)行統(tǒng)計(jì)及分析。統(tǒng)計(jì)分析結(jié)果如圖6所示:在“統(tǒng)計(jì)分析功能中,中文圖書的統(tǒng)計(jì)條件為:訂購日期限定在2008年1月1日-2009年1月1日,索書號(hào)位數(shù)為1位。點(diǎn)擊“開始統(tǒng)計(jì)”后,系統(tǒng)會(huì)在“表格顯示”欄中顯示統(tǒng)計(jì)結(jié)果,狀態(tài)欄中顯示匯總中文圖書總種數(shù):37561。(4)充分利用自動(dòng)化、網(wǎng)絡(luò)化、數(shù)字化條件,實(shí)現(xiàn)電子圖書采購的流程化和自動(dòng)化管理,提高采購效率。5文明分類采購。u3000對(duì)于紙質(zhì)圖書與紙質(zhì)圖書的分在文獻(xiàn)資源采購工作中,通過使用嵌入式電子圖書采購系統(tǒng):(1)實(shí)時(shí)掌握電子文獻(xiàn)資源的采購進(jìn)度,科學(xué)安排電子文獻(xiàn)采購工作。(2)嵌入MELINETSⅡ,通過采購借閱率高的紙質(zhì)圖書所對(duì)應(yīng)的電子圖書,解決紙質(zhì)圖書借閱人多而復(fù)本數(shù)不足的矛盾。(3)動(dòng)態(tài)統(tǒng)計(jì)分析各學(xué)科門類圖書的采購數(shù)量在總采購量中的比例,避免盲目采購。嵌入式電

溫馨提示

  • 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)論