周麗麗
(淮陰工學(xué)院財(cái)務(wù)處,江蘇淮安,223003)
現(xiàn)代企業(yè)的物流系統(tǒng)日趨復(fù)雜,企業(yè)庫(kù)存管理的物資材料、設(shè)備種類和出入庫(kù)訂單等文件數(shù)據(jù)很多,相對(duì)應(yīng)的查詢和統(tǒng)計(jì)要求也不斷提高。設(shè)計(jì)使用新型倉(cāng)庫(kù)管理信息系統(tǒng)成為必然。在這種規(guī)則要求下,新系統(tǒng)的功能、成本、可靠性等都必須得到保證,這對(duì)于企業(yè)實(shí)現(xiàn)倉(cāng)儲(chǔ)管理自動(dòng)化、提升管理信息化水平具有重要意義?;诖?,文章以倉(cāng)儲(chǔ)管理現(xiàn)代化為目標(biāo),使用已經(jīng)比較成熟的JSP技術(shù)設(shè)計(jì)倉(cāng)庫(kù)管理信息系統(tǒng),全面管理倉(cāng)庫(kù)材料和設(shè)備,全程監(jiān)控所有物料的出入庫(kù)情況,提高管理效率、縮短流通時(shí)間,可以實(shí)現(xiàn)倉(cāng)庫(kù)物資管理的清晰、有序和便捷。
JSP是于1999年9月推出的一個(gè)動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。它首先是由Sun Microsystems公司提出并建立,至今已經(jīng)先后推出過(guò)JSP1.0、JSP1.1、JSP1.2以及JSP2.0等多個(gè)版本。JSP在服務(wù)器端執(zhí)行,客戶端基于瀏覽器進(jìn)行瀏覽,它返回客戶端的就是一個(gè)HTML文本,保持了Java Servlet的特性[1]。換言之,Java Servlet 是JSP的技術(shù)基礎(chǔ),JSP完全具備了Java技術(shù)的簡(jiǎn)單易用。
JSP(Java Server Pages)完全面向?qū)ο?,其Web應(yīng)用可以在不同操作系統(tǒng)上跨平臺(tái)運(yùn)行。它是在傳統(tǒng)網(wǎng)頁(yè)HTML文件(*.htm,*.html)中封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè),通過(guò)插入Scriptlet和Tag形成JSP文件(*.jsp),并訪 問(wèn)服務(wù)端資源,其中插入的Scriptlet可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,根據(jù)提出的功能要求構(gòu)建動(dòng)態(tài)網(wǎng)頁(yè)。服務(wù)器在接收客戶端的請(qǐng)求后,首先進(jìn)行Java處理,然后返回執(zhí)行結(jié)果以及JSP文件中的HTML代碼,所以JSP可以簡(jiǎn)單表達(dá)為Java+HTML。
SQL Server是于1988年推出的一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。它開始是由Microsoft公司聯(lián)合Sybase等三家公司共同開發(fā),首個(gè)版本基于OS/2系統(tǒng)。隨著發(fā)展,Microsoft致力于將SQL應(yīng)用于Microsoft NT,Sybase更關(guān)注于UNIX系統(tǒng),而Ashton-Tate則基本退出合作?,F(xiàn)在我們通常所使用的SQL Server標(biāo)準(zhǔn)系統(tǒng)一般是指Microsoft SQL Server系統(tǒng),自1988年以來(lái),它已經(jīng)先后存在多個(gè)版本,目前主流的是SQL Server 2014,該版本在內(nèi)存在線事務(wù)處理、云整合、可用性組特征等方面完全突破了原有版本的不足和限制。
SQL是結(jié)構(gòu)化查詢語(yǔ)言(Structured Query Language),本質(zhì)上是一種數(shù)據(jù)庫(kù)查詢和程序設(shè)計(jì)語(yǔ)言[2]。SQL的典型特征是非過(guò)程化,它不要求用戶了解數(shù)據(jù)的具體存放方式,對(duì)于不同的數(shù)據(jù)結(jié)構(gòu),都實(shí)現(xiàn)數(shù)據(jù)描述、控制和數(shù)據(jù)操縱等功能。功能強(qiáng)大、操作靈活讓SQL迅速成為數(shù)據(jù)庫(kù)語(yǔ)言的通用標(biāo)準(zhǔn)。而SQL Server作為一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng),為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更可靠的存儲(chǔ)功能,一個(gè)關(guān)系型數(shù)據(jù)庫(kù)就是一個(gè)結(jié)構(gòu)化數(shù)據(jù)集合,用戶所要做的僅僅是根據(jù)需求添加、調(diào)用和訪問(wèn)。SQL Server因此成為企業(yè)構(gòu)建和管理業(yè)務(wù)流程的高性能系統(tǒng)選擇。
MVC由Trygve Reenskaug提 出,意 為“模 型-視圖-控制器”(Model-View-Controller),首先被應(yīng)用在SmallTalk-80環(huán)境中。對(duì)于界面設(shè)計(jì)可變性的需求,MVC把交互系統(tǒng)的組成分解成模型、視圖、控制器三種部件[3]。MVC通常用于分布式應(yīng)用系統(tǒng)的設(shè)計(jì)和分析中,其視圖部件展示表示模型數(shù)據(jù)及邏輯關(guān)系和狀態(tài)的信息,從模型獲得顯示信息;控制器部件的職責(zé)是控制提供模型中任何變化的傳播,是使模型和視圖協(xié)調(diào)工作的部件;模型部件封裝了問(wèn)題的核心數(shù)據(jù)、邏輯和功能的計(jì)算關(guān)系,獨(dú)立于具體的界面表達(dá)和I/O操作。MVC很好的實(shí)現(xiàn)了數(shù)據(jù)層與表示層的分離,可以同時(shí)建立和使用多個(gè)視圖,確保所有相關(guān)的視圖及時(shí)得到模型數(shù)據(jù)變化[4]。
倉(cāng)庫(kù)管理信息系統(tǒng)必須緊密圍繞倉(cāng)儲(chǔ)單位實(shí)際運(yùn)行中涉及的各方面元素設(shè)計(jì),通過(guò)開展廣泛的倉(cāng)儲(chǔ)需求分析和典型用戶調(diào)查,可以確定一個(gè)倉(cāng)庫(kù)管理信息系統(tǒng)平臺(tái)設(shè)計(jì),所需滿足的基本需求和包括的功能至少應(yīng)有貨物管理、庫(kù)存管理、訂單管理、客戶管理以及用戶管理功能(如圖1所示)。具體分析如下:
圖1 系統(tǒng)功能圖
(1)貨物管理:根據(jù)倉(cāng)庫(kù)內(nèi)貨物的實(shí)際流動(dòng)要求,實(shí)現(xiàn)對(duì)貨物資料(貨物編號(hào)、貨物名稱、價(jià)格、賣出價(jià)格、生產(chǎn)廠家、生產(chǎn)日期、貨物描述)進(jìn)行創(chuàng)建、增刪等管理需要。
(2)庫(kù)存管理:根據(jù)倉(cāng)庫(kù)內(nèi)所有貨物的當(dāng)前實(shí)際存儲(chǔ)狀態(tài),實(shí)現(xiàn)對(duì)貨物資料的庫(kù)存信息(庫(kù)存編號(hào)、庫(kù)存數(shù)量、貨物編號(hào)、創(chuàng)建日期、更新日期)進(jìn)行創(chuàng)建、更新等管理需要。
(3)訂單管理:根據(jù)倉(cāng)庫(kù)所接收到的運(yùn)營(yíng)端訂單需求狀況,實(shí)現(xiàn)對(duì)系統(tǒng)貨物庫(kù)存信息(訂單編號(hào)、貨物數(shù)量、貨物編號(hào)、用戶編號(hào))進(jìn)行編目、創(chuàng)建等管理需要。
(4)客戶管理:根據(jù)企業(yè)運(yùn)行中實(shí)際發(fā)生的客戶自然狀態(tài),實(shí)現(xiàn)對(duì)企業(yè)客戶信息(客戶編號(hào)、客戶名稱、聯(lián)系人、聯(lián)系電話、電子郵箱等)進(jìn)行增刪、修改等管理需要。
(5)用戶管理:該功能是系統(tǒng)的運(yùn)行功能而非企業(yè)運(yùn)營(yíng)功能。主要是根據(jù)倉(cāng)庫(kù)單位組織設(shè)置與管理人員匹配,實(shí)現(xiàn)系統(tǒng)管理員適時(shí)增減系統(tǒng)用戶字典、錄入用戶基本信息和設(shè)置不同用戶權(quán)限等管理需要。
通用的數(shù)據(jù)庫(kù)類型在工業(yè)應(yīng)用中有兩類,即面向?qū)ο蟮臄?shù)據(jù)庫(kù)與關(guān)系型數(shù)據(jù)庫(kù)。以Microsoft SQL Server為典型的關(guān)系型數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)先進(jìn)、使用靈活,已經(jīng)成為管理信息系統(tǒng)設(shè)計(jì)中的主流選擇。遵循系統(tǒng)功能需要和數(shù)據(jù)冗余要求,倉(cāng)庫(kù)管理系統(tǒng)的主要數(shù)據(jù)庫(kù)表如下:
貨物信息表對(duì)貨物資料的自然狀態(tài)描述,主要記錄貨物編號(hào)、名稱、價(jià)格、價(jià)格、生產(chǎn)廠家、生產(chǎn)日期等基本信息反映貨物產(chǎn)品特征的數(shù)據(jù)量表。貨物信息表一般以貨物編號(hào)為主鍵,具體字段及其詳細(xì)屬性如表1所示。
表1 貨物信息表結(jié)構(gòu)
庫(kù)存信息表是對(duì)倉(cāng)庫(kù)內(nèi)貨物庫(kù)存狀態(tài)的描述,它以庫(kù)存而非貨物為主體,主要記錄倉(cāng)庫(kù)內(nèi)貨物資料的庫(kù)存編號(hào)、貨物編號(hào)、創(chuàng)建日期、更新日期等。庫(kù)存信息表以庫(kù)存編號(hào)為主鍵,具體如表2所示。
表2 庫(kù)存信息表結(jié)構(gòu)
訂單信息表是對(duì)倉(cāng)庫(kù)訂單信息的描述,主要記錄訂單編號(hào)、貨物編號(hào)、貨物數(shù)量、用戶編號(hào)等訂單狀態(tài)的數(shù)據(jù)量表。訂單信息表一般以訂單編號(hào)為主鍵,具體如表3所示。
客戶信息表是對(duì)企業(yè)所有客戶信息的描述,主要記錄客戶編號(hào)、客戶名稱、聯(lián)系人、聯(lián)系方式等客戶個(gè)體信息的數(shù)據(jù)量表??蛻粜畔⒈硪话阋钥蛻艟幪?hào)為主鍵,具體如表4所示。
表4 客戶信息表結(jié)構(gòu)
用戶必須首先通過(guò)瀏覽器訪問(wèn)登錄子系統(tǒng),提供身份信息,通過(guò)驗(yàn)證,后方可進(jìn)入系統(tǒng),根據(jù)用戶權(quán)限,不同用戶登錄后,系統(tǒng)給出包括相應(yīng)功能的不同初始界面。限于篇幅,僅以貨物管理和庫(kù)存管理模塊為例,介紹其實(shí)現(xiàn)過(guò)程。
管理員成功登錄后,進(jìn)入貨物管理模塊,對(duì)系統(tǒng)中現(xiàn)有的貨物進(jìn)行添加、修改、查詢、刪除等維護(hù)。貨物管理功能界面如圖2所示。
圖2 貨物管理功能系統(tǒng)界面
實(shí)現(xiàn)代碼如下:
管理員成功登錄后,進(jìn)入庫(kù)存管理模塊,對(duì)系統(tǒng)中現(xiàn)有的貨物的庫(kù)存進(jìn)行添加、修改等維護(hù)。庫(kù)存管理功能界面如圖3所示。
圖3 庫(kù)存管理功能系統(tǒng)界面
實(shí)現(xiàn)代碼如下:
基于JSP面向?qū)ο蠹夹g(shù)和Microsoft SQL Server數(shù)據(jù)庫(kù)系統(tǒng),全面采用MVC模式框架,根據(jù)通過(guò)需求分析確定的貨物管理、庫(kù)存管理、訂單管理、客戶管理四大基本功能和系統(tǒng)用戶管理功能需要,以MyEclipse為開發(fā)平臺(tái)環(huán)境,采用MVC三層架構(gòu)和SQL Server 2014數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)開發(fā)軟件,可實(shí)現(xiàn)普通中小型公司針對(duì)貨物庫(kù)存及一般性流通的管理。企業(yè)信息化是社會(huì)全面信息化發(fā)展下的必然,針對(duì)倉(cāng)庫(kù)管理運(yùn)行特點(diǎn),開發(fā)設(shè)計(jì)更加滿足企業(yè)個(gè)性化需求的倉(cāng)庫(kù)管理系統(tǒng),精細(xì)化設(shè)計(jì)系統(tǒng)功能,精準(zhǔn)提高企業(yè)運(yùn)營(yíng)效率,提升企業(yè)自身規(guī)范化、信息化水平,是未來(lái)倉(cāng)庫(kù)信息化管理系統(tǒng)設(shè)計(jì)需要進(jìn)一步努力的目標(biāo)和方向。