●樓健群,陳 方(金華職業(yè)技術(shù)學(xué)院 圖書館,浙江 金華 321017)
版本記錄是圖書、報(bào)刊的出版者或版權(quán)所有者進(jìn)行版權(quán)通告的記錄,也是出版物必須具有的標(biāo)志。版本記錄頁(yè)又稱版權(quán)頁(yè)。[1]報(bào)刊的版本記錄包含:期刊名稱(報(bào)紙名稱)、主辦單位、出版單位、出版日期、定價(jià)等。[2,3]有學(xué)者認(rèn)為,出版周期也是版權(quán)頁(yè)信息。[4]
近年來(lái),由于出版發(fā)行成本的不斷增加和內(nèi)容的時(shí)常調(diào)整,報(bào)刊的定價(jià)、出版周期等版本記錄信息在跨年度時(shí)變動(dòng)十分頻繁,因而連續(xù)出版物系統(tǒng)內(nèi)的相關(guān)數(shù)據(jù)也常需修改。傳統(tǒng)的修改方法是手動(dòng)逐一修改,很是費(fèi)時(shí)費(fèi)力。而為了避免下一年度讀者服務(wù)工作受到影響,此項(xiàng)修改任務(wù)又必須在每年年底前的短時(shí)間內(nèi)完成,這給圖書館帶來(lái)了不小的壓力。
能否找到一種輕松更新連續(xù)出版物系統(tǒng)內(nèi)版本記錄數(shù)據(jù)的方法呢?筆者通過(guò)研究發(fā)現(xiàn):利用發(fā)行機(jī)構(gòu)網(wǎng)絡(luò)公布的報(bào)刊版本記錄信息,通過(guò)編寫一段程序并運(yùn)行之,就可以讓計(jì)算機(jī)系統(tǒng)自動(dòng)完成連續(xù)出版物系統(tǒng)中相關(guān)數(shù)據(jù)的更新任務(wù),從而大大提高工作效率。下面,筆者以大連網(wǎng)信軟件有限公司開(kāi)發(fā)的妙思TM文獻(xiàn)管理集成系統(tǒng)(以下簡(jiǎn)稱“妙思TM文獻(xiàn)”)為例,介紹這一應(yīng)用方法。
“妙思TM文獻(xiàn)”是基于客戶/服務(wù)器模式、數(shù)據(jù)庫(kù)采用Microsoft SQL Server2000/2005、前臺(tái)采用 Microso ft Visual FoxPro語(yǔ)言開(kāi)發(fā)的應(yīng)用軟件。[5]在它的連續(xù)出版物系統(tǒng)中,“年度續(xù)訂”和“期刊預(yù)訂”是十分重要的兩個(gè)功能項(xiàng)(“妙思TM文獻(xiàn)”里的“期刊”含義是廣義的,它包括所有連續(xù)出版物)?!澳甓壤m(xù)訂”項(xiàng)用于完成上年度已訂報(bào)刊的續(xù)訂,它可使續(xù)訂工作變得簡(jiǎn)捷方便。而“期刊預(yù)訂”項(xiàng)可用于輸入或修改報(bào)刊的版本記錄信息、采購(gòu)信息以及建立劃到表。
連續(xù)出版物系統(tǒng)中版本記錄數(shù)據(jù)的手工修改方法是:進(jìn)入“年度續(xù)訂”項(xiàng),以上年度批次的采購(gòu)信息表和報(bào)刊劃到表為基礎(chǔ)生成下一年度批次的相對(duì)應(yīng)表;然后進(jìn)入“期刊預(yù)訂”項(xiàng),逐一調(diào)出版本記錄信息有改變的報(bào)刊數(shù)據(jù)作相應(yīng)修改,并重新生成劃到表。
上述手工方法實(shí)質(zhì)上修改了數(shù)據(jù)庫(kù)中的哪些內(nèi)容呢?這需要從“妙思TM文獻(xiàn)”的幾個(gè)關(guān)系表說(shuō)起。
在“妙思TM文獻(xiàn)”中,存在著報(bào)刊信息表、采購(gòu)信息表和報(bào)刊劃到表等3個(gè)表(數(shù)據(jù)庫(kù)中分別用qkxxb、cgxxb、qkhdb表示)。報(bào)刊信息表記載了訂購(gòu)號(hào)、正題名、出版頻率等信息,采購(gòu)信息表記錄了采購(gòu)批號(hào)、每份人民幣、起止訂期等信息,報(bào)刊劃到表則記載了與此兩個(gè)表內(nèi)容直接相關(guān)的多項(xiàng)信息。手工修改方法實(shí)質(zhì)上就是修改了這3個(gè)表。如果我們能夠找到自動(dòng)更新這3個(gè)表數(shù)據(jù)的方法,也就等于完成了手工修改所完成的任務(wù)。
由于“妙思TM文獻(xiàn)”是一款易于系統(tǒng)擴(kuò)展和維護(hù)、便于數(shù)據(jù)共享和交換的應(yīng)用軟件,[5]具有良好的開(kāi)放性,因而通過(guò)某種方式交換其報(bào)刊信息表、采購(gòu)信息表和報(bào)刊劃到表數(shù)據(jù)就不存在設(shè)計(jì)上的障礙,這為自動(dòng)更新的實(shí)現(xiàn)奠定了基礎(chǔ)條件。
目前,內(nèi)地公開(kāi)發(fā)行的報(bào)刊主要委托郵局發(fā)行,而中國(guó)郵政報(bào)刊訂閱網(wǎng)上已公布了郵發(fā)報(bào)刊的最常變版本記錄數(shù)據(jù)。[6]此外,有的報(bào)刊出版單位也提供了其發(fā)行報(bào)刊的類似數(shù)據(jù)。[7]這些數(shù)據(jù)均真實(shí)、可靠。雖然發(fā)行出版商的本意是方便用戶訂購(gòu)報(bào)刊,但此舉卻恰好為我們實(shí)現(xiàn)版本記錄數(shù)據(jù)的自動(dòng)更新提供了極好的數(shù)據(jù)源。我們可以把它們下載下來(lái),通過(guò)一定的技術(shù)手段轉(zhuǎn)化成連續(xù)出版物系統(tǒng)所能夠接收的數(shù)據(jù)。
郵發(fā)報(bào)刊信息中有“郵發(fā)代號(hào)”項(xiàng),其它發(fā)行機(jī)構(gòu)的報(bào)刊信息中也有“代號(hào)”項(xiàng),而連續(xù)出版物系統(tǒng)中的“訂購(gòu)號(hào)”項(xiàng)通常輸入報(bào)刊的郵發(fā)代號(hào)或代號(hào)。它們?cè)诟髯缘南到y(tǒng)中都可用來(lái)區(qū)分不同的報(bào)刊品種,具有唯一性。只要編寫程序時(shí)將郵發(fā)代號(hào)(或代號(hào))與訂購(gòu)號(hào)作為比較關(guān)鍵字,凡是兩者內(nèi)容完全一致時(shí)才進(jìn)行一一對(duì)應(yīng)的數(shù)據(jù)替換,就能使自動(dòng)更新后的數(shù)據(jù)十分精準(zhǔn)。
在具體操作時(shí)做到:一是更新時(shí)間選擇在閉館時(shí)間;二是更新前做好數(shù)據(jù)備份;三是僅對(duì)相關(guān)幾個(gè)表的相應(yīng)內(nèi)容操作。只要按規(guī)范操作,自動(dòng)更新的運(yùn)行就十分安全。
下面以報(bào)刊品種為郵發(fā)期刊,征訂報(bào)刊年度為2009年度,版本記錄變化項(xiàng)為期刊名稱、全年價(jià)、出版周期(系統(tǒng)中分別用正題名、每份人民幣、出版頻率表示)為例,說(shuō)明自動(dòng)更新的具體步驟。
(1) 建立臨時(shí)數(shù)據(jù)表
在閉館狀態(tài)下,使用MS-SQL企業(yè)管理器進(jìn)行以下操作:
建立名為“BakD BLibrary”的數(shù)據(jù)庫(kù),然后將“DBLibrary”數(shù)據(jù)庫(kù)中的“qkxxb”“cgxxb”“qkhdb”3張數(shù)據(jù)表導(dǎo)入“BakDB Library”,進(jìn)行數(shù)據(jù)備份。
建立名為“youzheng”“cbplb”“l(fā)sqkxxb”等 3個(gè)數(shù)據(jù)表,其作用、數(shù)據(jù)類型及字段見(jiàn)表?!癱bplb”表中插入的數(shù)據(jù)為出版頻率、起止訂期。
(2)版本記錄數(shù)據(jù)采集
●下載郵發(fā)期刊版本記錄信息。登陸中國(guó)郵政報(bào)刊訂閱網(wǎng)→選擇“2009年雜志”→檢索,顯示有8094條郵發(fā)期刊→下一頁(yè)→在瀏覽器地址欄中找到“page=2&page_size=10”,將此處改為“page=1&page_size=8094”→回車→將網(wǎng)頁(yè)保存到本機(jī),重命名為“data.html”→將之用記事本打開(kāi),刪除版本記錄表格以外內(nèi)容后保存。
●將下載信息轉(zhuǎn)換成“youzheng”表數(shù)據(jù)。在本機(jī)IIS中發(fā)布data.html→逐行讀取data.html中表格→每行單元格中的數(shù)據(jù)用逗號(hào)隔開(kāi)并保存到“data.txt”→使用SQL企業(yè)管理器將“data.txt”導(dǎo)入到“youzheng”表。
●生成“l(fā)sqkxxb”表數(shù)據(jù)。代碼如下:
Insert intolsqkxxb select A.訂購(gòu)號(hào),A.正題名,A.出版頻率,B.起止訂期,A.每份人民幣from youzhengA,cbplbBwhereA.出版頻率=B.出版頻率。
(3) 數(shù)據(jù)的更新
●報(bào)刊信息表數(shù)據(jù)的更新。將“l(fā)sqkxxb”表導(dǎo)入“DBLibrary”數(shù)據(jù)庫(kù),然后選擇“DBLibrary”,在“qkxxb”表中增加“每份人民幣”“起止訂期”兩個(gè)字段(此舉為更新“cgxxb”表數(shù)據(jù)作準(zhǔn)備,也為了與“l(fā)sqkxxb”表對(duì)接),然后更新“qkxxb”表數(shù)據(jù)。代碼如下:
Updateqkxxbset正題名=B.正題名,出版頻率=B.出版頻率,每份人民幣=B.每份人民幣,起止訂期=B.起止訂期fromqkxxb A,lsqkxxb Bwhere A.訂購(gòu)號(hào)=B.訂購(gòu)號(hào)。
此時(shí),“qkxxb”表中的MARC字段數(shù)據(jù)尚未生成,需要通過(guò)下列兩步來(lái)完成:
第一步,用“妙思TM文獻(xiàn)”的“表到機(jī)讀目錄轉(zhuǎn)換器”功能生成*.iso文件。步驟是:系統(tǒng)工具→表到機(jī)讀目錄轉(zhuǎn)換器→數(shù)據(jù)源→指向DbLi brary→選擇“qkxxb”表→下一步→自動(dòng)對(duì)應(yīng)→“Qkxxbid”對(duì)應(yīng)機(jī)讀字段“記錄控制號(hào)”→保存文件(文件名為marc.iso)→開(kāi)始轉(zhuǎn)換。第二步,利用marc.iso中的“記錄控制號(hào)”與“qkxxb”表中的“Qkxxbid”一一對(duì)應(yīng)關(guān)系,更新“qkxxb”表中“Marc”字段中的相應(yīng)內(nèi)容。應(yīng)用程序原理是:逐行讀取文件流marc.iso→截取“記錄控制號(hào)”→“qkxxb”表中找到與之對(duì)應(yīng)的報(bào)刊→更新此報(bào)刊的marc字段為此行→直到文件末尾。
●采購(gòu)信息表數(shù)據(jù)的更新。代碼如下:
Upda tecgxxbset每份人民幣=B.每份人民幣,起止訂期=B.起止訂期fromcgxxb A,qkxxb Bwhere A.qkxxbid=B.qkxxbidandA.采購(gòu)批號(hào)='2009'(采購(gòu)批號(hào)必須要有)
●劃到表數(shù)據(jù)的生成。先將原來(lái)的劃到表內(nèi)容清除,代碼如下:Delete fromqkhdb where cgxxbid in(selectcgxxbidfromcgxxbwhere采購(gòu)批號(hào)=‘2009’),然后模仿手工修改方法承載生成劃到表。郵發(fā)期刊的出版頻率有多種,現(xiàn)以生成“月刊”劃到表的流程圖為例,其它出版頻率的劃到表可參照此一一生成。
至此,郵發(fā)期刊的名稱、全年價(jià)、出版周期等版本記錄項(xiàng)已更新完畢。
“月刊”劃到表流程圖
上述方法可以自動(dòng)完成連續(xù)出版物系統(tǒng)中絕大部分報(bào)刊版本記錄數(shù)據(jù)的修改任務(wù),這不僅能夠大大提高數(shù)據(jù)修改的工作效率,同時(shí)還能夠有效改善編目質(zhì)量(因?yàn)樽詣?dòng)更新方法采用發(fā)行出版商提供的標(biāo)準(zhǔn)數(shù)據(jù),可杜絕手工修改時(shí)產(chǎn)生的錄入差錯(cuò)現(xiàn)象)。目前,許多圖書館自動(dòng)化軟件與“妙思TM文獻(xiàn)”一樣具有良好的開(kāi)放性,因此在這些自動(dòng)化軟件中也理應(yīng)可以實(shí)現(xiàn)類似的自動(dòng)更新,因而這種方法具有積極的推廣意義。
[1]李法惠.學(xué)術(shù)期刊的版本記錄不能忽視[J].科技出版,2004(6):34-36.
[2]中華人民共和國(guó)新聞出版署.期刊出版管理規(guī)定[EB/OL].[2009-05-02].http://law.baidu.com/pages/chinalawinfo/6/7/c82e7b7ad35e216d9f9990bc7fcf7f00_0.html.
[3]中華人民共和國(guó)新聞出版署.報(bào)紙出版管理規(guī)定[EB/OL].[2009-05-02].http://law.baidu.com/pages/chinalawinfo/6/7/f09546219247c3a32a751267cbc1c07d_0.html.
[4]龐富祥.社會(huì)科學(xué)期刊版權(quán)頁(yè)應(yīng)規(guī)范化[J].編輯之友,2005(6):60-61.
[5]大連網(wǎng)信軟件有限公司.連續(xù)出版物系統(tǒng)聯(lián)機(jī)幫助 [EB/OL].[2009-05-02].妙思TM文獻(xiàn)管理集成系統(tǒng).http://www.ni-soft.com.
[6]中國(guó)郵政集團(tuán)公司.中國(guó)郵政報(bào)刊訂閱網(wǎng)[EB/OL].[2008-12-20].http://bk.chinapost.com.cn/.
[7]中國(guó)人民大學(xué)書報(bào)資料中心.人大書報(bào)資料中心網(wǎng) [EB/OL].[2008-12-20].http://www.zlzx.org/.