劉劍英,徐國凱
(1.大連職業(yè)技術(shù)學(xué)院信息技術(shù)系,遼寧大連 116035;
2.大連民族學(xué)院機電信息工程學(xué)院,遼寧大連 116605)
IBM System i平臺營銷系統(tǒng)的設(shè)計與實現(xiàn)
劉劍英1,徐國凱2
(1.大連職業(yè)技術(shù)學(xué)院信息技術(shù)系,遼寧大連 116035;
2.大連民族學(xué)院機電信息工程學(xué)院,遼寧大連 116605)
針對多地點倉儲及銷售的連鎖商貿(mào)企業(yè)管理系統(tǒng),實現(xiàn)了基于 IBM System i平臺對前臺W indows系統(tǒng)和后臺服務(wù)器的連接,采用二級登錄的權(quán)限實現(xiàn)方法,充分保障了企業(yè)的信息安全,利用服務(wù)器的通訊功能和網(wǎng)絡(luò)管理功能實現(xiàn)系統(tǒng)主機與遠程終端的連接。
IBM System i;營銷系統(tǒng);信息安全;遠程訪問
IBM System i服務(wù)器不僅僅是一款硬件產(chǎn)品,其運行的 I5/OS操作系統(tǒng)是 IBM整體集成系統(tǒng)解決方案的核心,支持多層軟件,集成數(shù)據(jù)庫(DB2)、病毒防護及安全性工具、通訊等功能,擁有統(tǒng)一的控制語言、一致的編程接口,最大限度地實現(xiàn)了各功能之間的兼容性,滿足企業(yè)對可靠性、可行性和可服務(wù)性的要求。盡管 X86服務(wù)器系統(tǒng)購買價格較低,但需要付出諸多軟件的授權(quán)費用及系統(tǒng)維修費用, IBM System i服務(wù)器系統(tǒng)運營成本更低,擁有系統(tǒng)穩(wěn)定可靠、安全性更好等優(yōu)點[1]。本文結(jié)合一個多地點倉儲及銷售的連鎖商貿(mào)企業(yè)管理系統(tǒng),研究了系統(tǒng)前后臺的連接、系統(tǒng)的安全機制和服務(wù)器與遠程終端的連接模式。
系統(tǒng)適用于中型商貿(mào)企業(yè) (根據(jù) IDC定義,中型企業(yè)是指那些擁有 100~999名員工的企業(yè)),目標(biāo)客戶為要求多地點倉儲及銷售的連鎖商貿(mào)企業(yè)。實現(xiàn)了商貿(mào)流通行業(yè)的信息化,幫助企業(yè)規(guī)范業(yè)務(wù)流程,通過對商品流通的成本、庫存、利潤和交易信息的及時匯總統(tǒng)計分析,為企業(yè)提供有效的管理信息和決策指導(dǎo)。系統(tǒng)主要功能包括采購管理、銷售管理、倉儲管理、往來賬款管理、報表管理、系統(tǒng)信息設(shè)置等,系統(tǒng)業(yè)務(wù)流程如圖 1。
圖 1 系統(tǒng)業(yè)務(wù)流程
系統(tǒng)前臺由 Delphi語言編寫完成,并采用Delphi本身攜帶的 DbExpress跨平臺數(shù)據(jù)訪問層工具與后臺服務(wù)器的DB2數(shù)據(jù)庫進行連接。
首先選取 TSQLConnection組件,它是 dbExpress層連接到 DBMS的組件??梢允褂?ConnectionName(默認數(shù)據(jù)庫)屬性中定義好的 (到特定數(shù)據(jù)庫的)特定連接信息,選擇屬性值為DB2Connection。
設(shè)置了 ConnectionName屬性值后,諸如 GetdriverFunc(dbExpress庫中入口點的名稱)、LibraryName(指定與 DB2通信的 dbExpress庫 )和VendorLib(DB2所需的 DB2庫的名稱)之類的其他屬性也將自動獲得。
成功登錄之后,應(yīng)用程序?qū)⒕哂械?DB2數(shù)據(jù)庫的連接。現(xiàn)在可以使用 TSQLTable、TSQLQuery、TSQLStoredProc或 TSQLDataSet組件從數(shù)據(jù)庫檢索信息了。使用 TSQLDataSet組件,將其 sqlConnection屬性指定為 TSQLConnection組件,使用 TableName屬性從數(shù)據(jù)庫中選取表。
值得注意的是,標(biāo)準的 dbExpress數(shù)據(jù)庫應(yīng)用是不使用數(shù)據(jù)緩存的,其數(shù)據(jù)集是個只讀、單向的數(shù)據(jù)集,這樣運行以達到最佳性能。但是,不用數(shù)據(jù)緩存將無法修改數(shù)據(jù),如果對數(shù)據(jù)進行修改,必須將內(nèi)容放在本地高速緩存 TClientdataSet中,需要再添加兩個組件:TDataSetProvider和 TClient-DataSet。必須將 TDataSetProvider的 DataSet屬性指派為 TSQLTable組件,以及將 TClientDataSet的Provider Name屬性連接到 TDataSetProvider。這樣tdataSetProvider將會為 TClientdataSet提供記錄,TSQLDataSet的只讀、單向的內(nèi)容 (帶有 LEFT OUTER JO IN的結(jié)果記錄)將被收集并置于 TClientDataSet組件中。后者將充當(dāng)一個內(nèi)存中的數(shù)據(jù)集 (in-memory dataset),可以使用它來極其快速地瀏覽結(jié)果記錄以及進行修改。
對DB2數(shù)據(jù)庫表的更新,必須調(diào)用 TClientdataSet的 ApplyUpdates方法。否則只對本地內(nèi)存中的 TClientdataSet進行了更改。
示例代碼如下:
由于全部修改都保存在內(nèi)存中,直到顯示的調(diào)用更新為止,TClientdataSet使用 UndoLastChange方法支持 Undo,參數(shù)指定是否希望執(zhí)行這一修改。(示例代碼如下)
在多表連接查詢的情況下,要向單個表發(fā)送更新十分困難。必須顯式地決定哪個表將獲得更新,并確保在所生成的更新命令中僅包含屬于該表的字段。為了指定特定的表名,必須單擊 Data-SetProvider組件,選擇 OnTableName事件。 (示例代碼如下)
執(zhí)行更新語句時碰到了問題,要從 TClient-DataSet的 OnReconcileError事件處理程序著手,如果調(diào)用 ApplyUpdates失敗,就會觸發(fā)該事件。另外可以使用 TSQLMonitor組件完全監(jiān)控客戶機向 DB2 UDB數(shù)據(jù)庫發(fā)送的 SQL。
系統(tǒng)為雙機系統(tǒng)設(shè)計,1臺為工作服務(wù)器、1臺為備份服務(wù)器,兩主機之間通過局域網(wǎng) (LAN)相聯(lián),通過 TCP/IP通訊協(xié)議,實現(xiàn)兩臺主機之間數(shù)據(jù)的實時傳遞[2]。
系統(tǒng)采用雙機熱備份的安全保障措施。利用VisionSuite軟件進行數(shù)據(jù)庫復(fù)制。VisionSuite軟件的OMS/400模塊對物理文件、數(shù)據(jù)域和數(shù)據(jù)隊列進行實時鏡像,提供災(zāi)難恢復(fù)功能。ODS/400模塊為客戶提供全系統(tǒng)冗余備份,實現(xiàn)兩臺主機之間的應(yīng)用環(huán)境 (包括應(yīng)用程序、網(wǎng)絡(luò)配置、用戶、密碼等)實時同步的功能。SAM/400模塊連續(xù)監(jiān)測工作和備份系統(tǒng)。一旦發(fā)現(xiàn)工作機出現(xiàn)故障,SAM/400可以在短時間內(nèi)自動將用戶切換到備份系統(tǒng)。保證業(yè)務(wù)連續(xù)正常運行,避免停機造成的損失[1]。
系統(tǒng)訪問控制采用兩級登錄方式加以實現(xiàn)。一級登錄完成工作站與服務(wù)器的網(wǎng)絡(luò)連接。二級登錄由前臺應(yīng)用程序?qū)崿F(xiàn)。一級帳戶權(quán)限較低,負責(zé)連接服務(wù)器,不能訪問數(shù)據(jù)庫;二級登錄帳戶具有訪問數(shù)據(jù)庫能力,但只能通過系統(tǒng)前臺應(yīng)用程序取得,從而保障數(shù)據(jù)庫的安全。通過限制二級登錄用戶的數(shù)據(jù)訪問權(quán)限實現(xiàn)數(shù)據(jù)訪問控制。
(1)I
BM System i系統(tǒng)級權(quán)限控制
IBM System i系統(tǒng)在業(yè)界以安全聞名,迄今尚未發(fā)現(xiàn)病毒,也沒有黑客可以攻破。
IBM System i系統(tǒng)有 5個安全級別,用戶可以靈活的設(shè)置。本設(shè)計選擇的是 30級 (系統(tǒng)值QSECUR ITY=30)的安全級別,限制相對適中。在 30級中,用戶登陸前必須注冊,輸入正確的口令才能進入系統(tǒng)。系統(tǒng)設(shè)置了對資源的訪問權(quán)限,只有獲得相應(yīng)權(quán)限的用戶才可以訪問相應(yīng)的系統(tǒng)資源。操作難易程度適當(dāng),并能有效保障數(shù)據(jù)安全性[3]。
(2)應(yīng)用程序級權(quán)限控制
根據(jù)不同層次、不同需要對操作員分配不同的操作級別 (如:管理員級、普通用戶級等)。不同級別的用戶進入系統(tǒng)顯示的菜單界面是不一樣的(或禁止進入系統(tǒng)菜單),操作員只能進入自己的操作界面,對未定義其操作權(quán)限的模塊或功能不能執(zhí)行操作,系統(tǒng)會屏蔽不需要的應(yīng)用菜單、功能鍵及命令行等。系統(tǒng)中各項功能均要記錄最后使用的操作員代碼和操作時間。
同時系統(tǒng)對部分關(guān)鍵的系統(tǒng)命令或命令行做了設(shè)定,禁止普通用戶使用,以避免對系統(tǒng)惡意或無意的破壞[4]。
利用服務(wù)器的通訊功能和網(wǎng)絡(luò)管理功能,及其他周邊硬件、軟件設(shè)備,可以實現(xiàn)系統(tǒng)主機間的聯(lián)網(wǎng)及 PC機作為系統(tǒng)遠程仿真終端的遠程連接模式。
本系統(tǒng)采用通過服務(wù)器的通訊適配器接口使用MODEM與遠程 PC機端的MODEM連接,使遠端的 PC機可作為單獨的遠程終端使用[5]。
圖 2 主機與遠程終端的連接模式
System i服務(wù)器用 TCP/IP協(xié)議與其他主機進行通訊時,性能不是很好,可以通過修改服務(wù)器上TCP/IP的配置進行改善:
(1)修改 MTU值 (Maximum Transmission U-nit),在“Max imum trans mission unit”參數(shù)位置輸入IFC,可以提高 TCP/IP在這個接口上的吞吐量。
(2)修改發(fā)送 /接收緩沖區(qū)的值,缺省情況下TCP的發(fā)送 /接收緩沖區(qū)的大小是 8192,可以考慮適當(dāng)調(diào)整它值 (范圍是 0.5MB-8MB)。適當(dāng)調(diào)低參數(shù)“TCP receive buffer size”的值及適當(dāng)調(diào)高參數(shù)“TCP send buffer size”的值。
IBM System i在全球范圍內(nèi)的中型企業(yè)得到廣泛的應(yīng)用,幫助企業(yè)節(jié)省了大量的人力資源,并降低了企業(yè)運營成本。本文實現(xiàn)了對系統(tǒng)前臺W indows系統(tǒng)和后臺服務(wù)器的連接,采用二級登錄的權(quán)限實現(xiàn)方法,充分保障了企業(yè)的信息安全;利用服務(wù)器的通訊功能和網(wǎng)絡(luò)管理功能實現(xiàn)系統(tǒng)主機間的聯(lián)網(wǎng),以及 PC機作為系統(tǒng)遠程仿真終端的遠程連接。
本系統(tǒng)在企業(yè)投入運營以來,為企業(yè)的業(yè)務(wù)流程再造提供了基礎(chǔ)和推動力,不僅改善了經(jīng)營環(huán)境,增加了利潤,還利用其卓越的可靠性、安全性保障了企業(yè)的信息安全,受到用戶的認可。系
統(tǒng)充分利用服務(wù)器本身的資源,使企業(yè)管理和決策更加全面、準確、深化,使企業(yè)管理水平登上一個新臺階,提高了企業(yè)在同行業(yè)中的市場競爭力。
[1] IBM.iSeries通用方案建議書[J].白皮書,2002(7):10-15.
[2]王洪成,張琦.基于 TCP/IP的 AS/400數(shù)據(jù)傳輸與通訊在倉儲物流企業(yè)中的應(yīng)用 [J].中國水運,2007(5):162-163.
[3]郎登何,王成良.網(wǎng)絡(luò)營銷系統(tǒng) D IAA安全方案的設(shè)計與實現(xiàn)[J].中國新技術(shù)新產(chǎn)品,2009(3):17-18.
[4]王櫻.基于AS/400系統(tǒng)的安全審計策略的設(shè)計和研究[J].南昌工程學(xué)院學(xué)報,2005(4):54-56.
[5]朱蓉.基于 TCP/IP協(xié)議的網(wǎng)絡(luò)通信模式的實現(xiàn)[J].嘉興學(xué)院學(xué)報,2006(3):80-85.
Design and Implementation of a Marketing System Based on IBM System i
L IU Jian-ying1,XU Guo-ka i2
(1.Department of Information Technology,Dalian Vocational Technology College,Dalian Liaoning 116035,China;2.College of Electromechanical&Infor mation Engineering,Dalian NationalitiesUniversity,Dalian Liaoning 116605,China)
For chain business management system with multi-location warehousing and sales,we realized connections between front-end windows system and back-end servers based on the IBM System i platform.Business infor mation security is guaranteed with SecondaryLogon.Connections between the system host and remote ter minals were established by the communication and network administration functions of servers.
IBM System i;marketing system;infor mation security;remote access
TP311
A
1009-315X(2010)01-0068-04
2009-07-07
劉劍英 (1978-),女,黑龍江黑河人,講師,主要從事計算機軟件和網(wǎng)絡(luò)研究。
徐國凱 (1956-),男,遼寧撫順人,教授,學(xué)校優(yōu)秀教學(xué)帶頭人,主要從事先進控制理論研究。
(責(zé)任編輯 劉敏)