摘 要:隨著當(dāng)今科學(xué)技術(shù)的高速發(fā)展,方便、快捷的管理手段已經(jīng)成為所有管理部門的迫切要求。庫存管理是企業(yè)管理的基礎(chǔ),能否對庫存進(jìn)行科學(xué)的、有效的管理,將直接影響企業(yè)其他各部門的生產(chǎn)運(yùn)作的好壞。
本論文描述了《教材庫管理系統(tǒng)》的設(shè)計(jì)與實(shí)現(xiàn)。
該系統(tǒng)功能強(qiáng)大的數(shù)據(jù)庫內(nèi)存有大量的教材數(shù)據(jù)信息,并有較強(qiáng)的查詢統(tǒng)計(jì)功能,能夠按照多種方式進(jìn)行查詢和統(tǒng)計(jì),能夠及時(shí)可靠地處理日常購銷單據(jù),并能輕松快捷地完成各種報(bào)表,基本適應(yīng)了現(xiàn)代信息高速度的要求。
關(guān)鍵詞:數(shù)據(jù)恢復(fù) 繼承 數(shù)據(jù)流 模糊查詢
引言
近幾年,隨著教學(xué)改革的不斷深化,教學(xué)質(zhì)量的不斷提高,高等學(xué)校教材的品種和數(shù)量日益增多,教材管理的任務(wù)也日益加重。為了使教材管理人員從繁重的手工勞動中解放出來,提高辦事效率,加快辦公自動化的進(jìn)程,筆者研制開發(fā)了“教材庫管理系統(tǒng)”。該系統(tǒng)是“教材購銷系統(tǒng)”的重要組成部分之一,與“教材銷售管理”、“教材訂購管理”、“財(cái)務(wù)管理”整合為“教材購銷系統(tǒng)”。
該系統(tǒng)擁有較強(qiáng)大的進(jìn)銷存功能,能使得教材的采購、銷售變得方便、快捷、高效、迅速。此系統(tǒng)是建立在PowerBuilder9.0平臺上的,后臺數(shù)據(jù)庫使用SQL Server2000,具有多種查詢和統(tǒng)計(jì)功能。
一、教材庫管理系統(tǒng)開發(fā)概述
高校教材書庫管理是高校教材管理的重要環(huán)節(jié),書庫管理的優(yōu)劣,將直接影響到能否按時(shí)足量地保證教材供應(yīng)和教學(xué)工作的順利進(jìn)行,因此,能否搞好教材庫管理,事關(guān)重大。
近些年來,隨著社會的不斷發(fā)展與進(jìn)步,人們對于教材書庫管理工作的認(rèn)識,已由低層次向高層次發(fā)展,由原來的感性認(rèn)識向理性認(rèn)識提高,書庫管理工作的重要性已逐漸被人們所認(rèn)識。不少有識之士認(rèn)為,書庫管理也是一門科學(xué),而要搞好這門科學(xué),就必須學(xué)習(xí)和掌握多方面的專業(yè)知識,諸如教育管理學(xué)、圖書管理學(xué)、物資財(cái)務(wù)管理學(xué)、教材管理理論以及現(xiàn)代化的計(jì)算機(jī)管理知識和操作技能等。只有熟練地掌握了這門科學(xué),才能搞好書庫管理,才能適應(yīng)教育改革的需要,為教學(xué)提供更好的服務(wù)。教材庫管理是教材管理中的重要環(huán)節(jié),是企業(yè)實(shí)現(xiàn)現(xiàn)代化管理的基礎(chǔ)。因此,在研究和開發(fā)教材管理系統(tǒng)時(shí),大多把庫存管理系統(tǒng)作為突破口。
二、教材庫管理系統(tǒng)總體概述
1. 系統(tǒng)用戶簡介
本系統(tǒng)是一個(gè)大學(xué)校園內(nèi)部的教材購銷局域網(wǎng),其主要用戶是面向大學(xué)師生的,是為了方便廣大師生在校園內(nèi)部網(wǎng)絡(luò)上購買教材而設(shè)計(jì)的。
2. 項(xiàng)目目的
校園內(nèi)部教材購銷系統(tǒng)管理,是制定購書計(jì)劃并打出購書定單從教材經(jīng)銷商處購入書籍,然后再向?qū)W校內(nèi)銷售。此系統(tǒng)避免了用戶挑選教材的煩瑣過程,使得購書過程變得輕松、快捷、方便,很適合現(xiàn)代人快節(jié)奏的生活;同時(shí)又能有效地使學(xué)校的人力、物力、財(cái)力進(jìn)行合理的配置,提高了管理人員的效率,有利于教材管理工作人員擺脫“收收發(fā)發(fā)”的繁忙的事務(wù)性工作,更多地進(jìn)行教材供需信息的研究,及時(shí)提供優(yōu)質(zhì)適用的教材;其次,有利于提高教材管理工作的效率和水平,促進(jìn)管理的規(guī)范化和現(xiàn)代化。微機(jī)及其管理軟件的運(yùn)用,使管理信息處理的速度和數(shù)量呈幾何級數(shù)提高,推動了教材管理工作現(xiàn)代化的發(fā)展;第三,有利于提高教材管理工作人員的自身素質(zhì)。管理工作者要通過各種方式和途徑不斷加強(qiáng)自身的學(xué)習(xí)和提高,以適應(yīng)變化了的工作環(huán)境和管理方式。
3. 項(xiàng)目目標(biāo)
該系統(tǒng)擁有較強(qiáng)大的進(jìn)銷存功能,能使得教材的采購、銷售變得方便、快捷、高效、迅速。此系統(tǒng)是建立在PowerBuilder9.0平臺上的,后臺數(shù)據(jù)庫使用SQL Server2000,具有多種查詢和統(tǒng)計(jì)功能。按照現(xiàn)在教材購銷的需求所設(shè)計(jì),數(shù)據(jù)庫容量大并且安全可靠。能及時(shí)處理日常的購銷任務(wù),并自動生成購銷單據(jù),打出清單,完成各類財(cái)務(wù)報(bào)表。此外還提供多種查詢方式如按書籍類別、書名、作者、出版社等供用戶查詢所需教材。在庫存管理上也提供了多種查詢方式,對單據(jù)進(jìn)行查詢和統(tǒng)計(jì),數(shù)據(jù)備份功能使得本系統(tǒng)更加完善,能有效地防止教材庫的數(shù)據(jù)破壞和丟失。
三、 教材庫管理系統(tǒng)功能設(shè)計(jì)
1. 設(shè)計(jì)目的
用計(jì)算機(jī)管理資料是計(jì)算機(jī)辦公自動化普及后的必然結(jié)果。教材庫管理系統(tǒng)是各大中小學(xué)校實(shí)現(xiàn)計(jì)算機(jī)資料管理的必備系統(tǒng)之一。本課題即為之構(gòu)建一個(gè)教材庫管理系統(tǒng),而教材庫管理是教材購銷管理系統(tǒng)中一個(gè)很重要的部分,在整個(gè)系統(tǒng)中有著舉足輕重的作用。
2. 項(xiàng)目背景
高校教材書庫管理是高校教材管理的重要環(huán)節(jié),書庫管理的優(yōu)劣,將直接影響到能否按時(shí)足量地保證教材供應(yīng)和教學(xué)工作的順利進(jìn)行,因此,能否搞好教材庫管理,事關(guān)重大。
近些年來,隨著社會的不斷發(fā)展與進(jìn)步,人們對于教材書庫管理工作的認(rèn)識,已由低層次向高層次發(fā)展,由原來的感性認(rèn)識向理性認(rèn)識提高,書庫管理工作的重要性已逐漸被人們所認(rèn)識。不少有識之士認(rèn)為,書庫管理也是一門科學(xué),而要搞好這門科學(xué),就必須學(xué)習(xí)和掌握多方面的專業(yè)知識,諸如教育管理學(xué)、圖書管理學(xué)、物資財(cái)務(wù)管理學(xué)、教材管理理論以及現(xiàn)代化的計(jì)算機(jī)管理知識和操作技能等,只有熟練地掌握了這門科學(xué),才能搞好書庫管理,才能適應(yīng)教育改革的需要,為教學(xué)提供更好的服務(wù)。
3. 項(xiàng)目概述
結(jié)合學(xué)校的教材購銷的實(shí)際情況用Powerbuilder9.0及SQL Server2000開發(fā)出一套實(shí)用的教材購銷系統(tǒng)。該系統(tǒng)使用SQL Server2000建立一個(gè)數(shù)據(jù)庫并用Powerbuilder9.0進(jìn)行控件放置和編程實(shí)現(xiàn)。運(yùn)用程序設(shè)計(jì)語言及數(shù)據(jù)庫知識,對學(xué)校教材庫存進(jìn)行管理,記錄所有教材的數(shù)量、金額、貨位、供貨商等基本信息,收到提貨單后清查庫存并出貨,教材暫缺時(shí)反饋缺貨單并指出可提此教材的時(shí)間(出庫管理)。當(dāng)庫中教材數(shù)量發(fā)生變化時(shí)及時(shí)修改相關(guān)文件,如果某種教材的庫存量少于它的庫存臨界值,應(yīng)報(bào)告給采購部門以便訂貨,規(guī)定每天向采購部門送一次訂貨報(bào)告。
4. 教材庫管理系統(tǒng)需求
要求系統(tǒng)可以準(zhǔn)確地紀(jì)錄和查詢倉庫內(nèi)管理的教材信息。包括教材的名稱、單價(jià)、存貨的公司、貨品的特性、教材的單價(jià)以及存儲的特殊要求等。
要求可以準(zhǔn)確地紀(jì)錄倉庫中的庫存信息,包括教材的出庫時(shí)間、入庫時(shí)間、教材的存儲警戒底線(即達(dá)到最大量時(shí)提示和最小量的提示)、教材的存放位置、入庫單價(jià)和出庫單價(jià)等。
教材的入庫管理。包括教材入庫期間的統(tǒng)計(jì)、供貨單位供貨分類統(tǒng)計(jì)、供貨單位供貨期間的金額統(tǒng)計(jì)。
教材的出庫管理。包括教材出庫的統(tǒng)計(jì)、收貨單位階段性收貨統(tǒng)計(jì)以及收貨單位階段性金額統(tǒng)計(jì)等。

5. 關(guān)鍵技術(shù)
窗口繼承的使用:
在本子系統(tǒng)設(shè)計(jì)中,由于考慮到多處用到類似的窗口和數(shù)據(jù)窗口,所以采用先創(chuàng)建一個(gè)祖先窗口,以后其他窗口都從祖先窗口繼承的辦法來創(chuàng)建各個(gè)子窗口。
創(chuàng)建祖先窗口w_xmodfather,第一步方法與創(chuàng)建w_xmain窗口方法一樣,只是在設(shè)置屬性時(shí)有較大的不同,只需要將其屬性WindowType設(shè)置為“main!”,其余屬性全部采用默認(rèn)值即可。創(chuàng)建祖先窗口的第二步是在窗口中添加一個(gè)數(shù)據(jù)窗口控件dw_1,這樣從祖先窗口w_xmodfather繼承下來的所有子窗體都會自動包含一個(gè)數(shù)據(jù)窗口控件dw_1。第三步是在窗口的右下方放置四個(gè)控件按鈕,其click事件中分別用來實(shí)現(xiàn)數(shù)據(jù)窗口控件中數(shù)據(jù)的增加、刪除、保存以及窗口關(guān)閉的功能。在后面的業(yè)務(wù)父窗口w_xbusfather的創(chuàng)建方法類似為w_xmodfather父窗口添加用戶自定義事件及其腳本:
在作其他工作之前,首先為父窗口w_xmodfather的open事件增加如下的腳本:
dw_1.settransobject(sqlca)
這一句腳本的作用是將數(shù)據(jù)窗口控件dw_1與Powerbuider默認(rèn)的全局事務(wù)對象SQLCA關(guān)聯(lián)起來,這樣就可以直接使用數(shù)據(jù)庫操縱語句操縱數(shù)據(jù)庫了。
在cb_1的“增加”的click事件中輸入下面的程序代碼:
long g_currownum
g_currownum=dw_1.InsertRow(0)//在dw_1的最后一行插入一行
dw_1.SetFocus() //dw_1獲得焦點(diǎn)
dw_1.ScrollToRow(g_currownum) //滾動到當(dāng)前行
dw_1.SetColumn(1)//設(shè)置焦點(diǎn)為此行的第1列
在cb_2的“刪除”的click事件中輸入下面的程序代碼:
g_currownum=dw_1.getrow( )//得到當(dāng)前記錄號
deleterow(dw_1,g_currownum)//刪除當(dāng)前記錄
在cb_3的“保存”的click事件中輸入下面的程序代碼:
if update(dw_1,true,1)=1 then //保存修改成功,提交修改
dw_1.resetupdate( )
commit using SQLCA;
Messagebox(″成功″,″保存成功!″)
Else
rollback; //保存修改失敗,取消所做的修改
Messagebox(″保存錯(cuò)誤!!!″,″數(shù)據(jù)保存失敗″)//彈出一個(gè)對話框警告
end if
在cb_4的“退出”的click事件中輸入下面的程序代碼:
close(parent)//關(guān)閉父窗口
實(shí)現(xiàn)過程:
在教材購銷系統(tǒng)應(yīng)用程序中,添加一個(gè)窗體,命名為w_xlogin。
在窗體中添加1個(gè)Groupbox控件、3個(gè)StaticText控件、1個(gè)RoundRectangle control控件和2個(gè)CommandButton控件。
對“確定”控件編程,代碼如下:
string pwd,username
int xy,net
username=sle_1.text
pwd=sle_2.text
select count(id)
into :xy
from xxlogin
where id=:username
and password=:pwd
using sqlca;
if xy>0 then
open(w_xmain)
else
net=messagebox(″提示:″,″用戶名或者密碼錯(cuò)誤,請重輸入!″)
end if
if net=1 then
return 1
else
close(parent)
end if
四、尚未解決的問題
1.由于時(shí)間倉促,對于系統(tǒng)很多方面的布局設(shè)計(jì)并不完善,這就使系統(tǒng)的可擴(kuò)充性和數(shù)據(jù)的安全性在一定程度上有所下降,也使代碼的重用性有所降低,給對代碼的修改帶來了一定的麻煩。
2.由于該系統(tǒng)是針對院校的教材購銷來進(jìn)行開發(fā)的,雖然對同類高校的管理具有一些通用性,但對其他類型的企業(yè)的庫存管理通用性不強(qiáng),還有待于進(jìn)行更加深入的研究,使軟件的通用性更強(qiáng)。
參考文獻(xiàn):
[1]明德祥.Powerbuiler 8.0網(wǎng)絡(luò)技術(shù)與應(yīng)用.清華大學(xué)出版社,2002年05期:253-254.
[2]崔杜武,姚全珠,范艷華等.Powerbuiler 9.0從基礎(chǔ)到應(yīng)用.人民郵電出版社,2002年04期:35-35.
[3]何旭洪,余建英.PowerBuilder9.0數(shù)據(jù)庫系統(tǒng)開發(fā)實(shí)例導(dǎo)航.人民郵電出版社,2001年11期:236-236.
[4]虞益誠,孫莉.SQL SERVER 2000數(shù)據(jù)庫應(yīng)用技術(shù).中國鐵道出版社,2004年12期:127-128.
[5]Sybase參考手冊.copyright(c)1981-2001 by Sybase,inc.2001年06期:36-37.
[6]汪成為.面向?qū)ο蠓治觥⒃O(shè)計(jì)及應(yīng)用.國防工業(yè)出版社,2001年03期:54-54.
[7]David E Brumbaugh.Object_Oriented Development.(柏路等譯.C++面向?qū)ο蟮某绦蜷_發(fā)技術(shù)).電子工業(yè)出版社,1996年06期:15-15.
[8]Yao S B.趙延光,刑俊英等編譯.數(shù)據(jù)庫系統(tǒng)基礎(chǔ).計(jì)算機(jī)工程與應(yīng)用,1981年03期:16-16.
[9]石樹剛,鄭振楣.關(guān)系數(shù)據(jù)庫.清華大學(xué)出版社,1993年08期:21-22.