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

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