曹鋒
(齊魯工業(yè)大學(xué) 財(cái)政與金融學(xué)院,山東 濟(jì)南 250100)
ERP是通過(guò)信息系統(tǒng)對(duì)信息進(jìn)行充分整理,高效傳遞,使企業(yè)的各項(xiàng)資源:人、財(cái)、物等能夠得到合理利用,從而提高經(jīng)營(yíng)效率的現(xiàn)代企業(yè)管理理論[1]。它歷經(jīng)了MRP(物料需求計(jì)劃)、MRPII(制造資源計(jì)劃)、ERP(企業(yè)資源規(guī)劃)三大發(fā)展階段。供應(yīng)鏈管理是經(jīng)共同計(jì)劃,令物流渠道設(shè)置由“松散、獨(dú)立”群體,轉(zhuǎn)成致力提升效率、強(qiáng)化競(jìng)爭(zhēng)力的合作力量[2]。所以,供應(yīng)鏈管理是ERP中重要核心的組成部分。
超市供應(yīng)鏈管理系統(tǒng)能讓管理者及時(shí)、快捷地掌握整條超市貨物供應(yīng)鏈信息,由采購(gòu)至庫(kù)存,拓展到庫(kù)存至銷(xiāo)售。通過(guò)獲取這些信息,管理者能夠全面快捷地?cái)M定出更加有效的決策。一方面提升超市管理;另一方面充分了解如供應(yīng)商、庫(kù)管與客戶(hù)的協(xié)調(diào)管理等內(nèi)容。顯而易見(jiàn),采購(gòu)管理(供貨管理)、庫(kù)存管理(商品管理)、銷(xiāo)售管理三大部分構(gòu)成了超市供應(yīng)鏈管理。本文主要針對(duì)這三大部分,利用C/S框架與VB信息技術(shù)、SQLServer2005數(shù)據(jù)庫(kù)技術(shù)[3]對(duì)三大部分開(kāi)展研究。
商品管理主要包括:商品類(lèi)型信息管理與商品信息管理兩大部分。
商品類(lèi)型信息管理的功能主要通過(guò)clsMTypes(clsMType)類(lèi)來(lái)完成實(shí)現(xiàn),其主要功能包含:商品類(lèi)型信息的添加、商品類(lèi)型信息的修改、商品類(lèi)型信息的刪除、商品類(lèi)型信息的查詢(xún)等。
商品類(lèi)型信息集合類(lèi)clsMTypes:主要實(shí)現(xiàn)多個(gè)商品類(lèi)型的信息管理。其最小的單元是clsMType,它完成與一組商品類(lèi)型信息相關(guān)的操作,比如查找功能等。clsMTypes類(lèi)的實(shí)現(xiàn)主要分2步:
(1)AddEX方法的添加;
(2)Find方法的添加。
根據(jù)給定參數(shù)查找商品類(lèi)型,返回結(jié)果為clsmtypes類(lèi)型,然后設(shè)計(jì)一個(gè)ID,其初始值為-1,最后返回值在clsmtypes類(lèi)型中一個(gè)clsmtype集合內(nèi)。如果省略參數(shù)時(shí),則返回所有商品類(lèi)型。
商品信息管理的功能主要通過(guò)clsmerch類(lèi)、clsmerchs類(lèi)來(lái)實(shí)現(xiàn),其主要功能是:添加、修改、刪除、查詢(xún)商品信息。商品信息類(lèi)(clsmerch)用來(lái)完成單個(gè)商品信息處理的基本操作功能:添加、修改、刪除等,它是整個(gè)系統(tǒng)的核心與基礎(chǔ)。
(1)為clsmerch類(lèi)添加方法
①Addnew方法。該方法返回值為gxcaddnew類(lèi)型,設(shè)計(jì)思路為檢測(cè)商品名是否存在,然后組織SQL語(yǔ)句并執(zhí)行,如果操作成功返回當(dāng)前ID的最大值,否則返回操作結(jié)果。當(dāng)添加字符型的數(shù)據(jù)時(shí),要過(guò)濾字符串中的單引號(hào),因?yàn)樵赟QL語(yǔ)言中字符串是以單引號(hào)為分界的,如果在字符串中出現(xiàn)單引號(hào),SQL語(yǔ)言就認(rèn)為當(dāng)前的字符串已經(jīng)結(jié)束,這樣會(huì)造成異常的SQL語(yǔ)法錯(cuò)誤,處理辦法是去掉單引號(hào)或用兩個(gè)單引號(hào)表示一個(gè)單引號(hào)。
②Update方法。該方法返回值為gxupdate類(lèi)型,主要功能:修改更新改商品信息。設(shè)計(jì)思路:在clsmerch內(nèi)的數(shù)據(jù)已賦值的情況下,組織sql語(yǔ)句執(zhí)行,最后返回操作結(jié)果。
③Delete方法。該方法返回值為gxcdelete類(lèi)型,主要功能:刪除商品信息。設(shè)計(jì)思路:判斷參數(shù)是否使用默認(rèn)值,然后開(kāi)始執(zhí)行事務(wù):先刪除供貨信息、刪除銷(xiāo)售信息,再刪除報(bào)損信息、刪除商品信息,接受(完成)事務(wù),最后返回操作結(jié)果。
(2)為clsmerchs類(lèi)添加方法
①addex方法
Public sub addex(obj as clsmerch)
Mcol.add obj,:“a”&obj.id
②find方法。該方法返回值為clsmerchs類(lèi)型。主要功能:給定參數(shù)查找商品信息。設(shè)計(jì)思路:根據(jù)傳入?yún)?shù)組織sql語(yǔ)句并執(zhí)行-將查到的結(jié)果加入集合-返回類(lèi)本身。
③FindStorage方法。該方法返回值為clsmerchs類(lèi)型。主要功能:庫(kù)存量排序后查找商品。設(shè)計(jì)思路:根據(jù)傳入?yún)?shù)組織sql語(yǔ)句并執(zhí)行,在此語(yǔ)句中規(guī)定以庫(kù)存量M_storage_N來(lái)排序,然后數(shù)據(jù)庫(kù)將符合結(jié)果的前ncount條記錄返回-將查到的結(jié)果加入集合-返回類(lèi)本身。
至此,商品管理模塊的基本功能已經(jīng)實(shí)現(xiàn),如圖1所示。
圖1 商品管理模塊
供貨商管理(采購(gòu)管理)主要包括兩大部分:供貨商信息管理和供貨信息管理模塊。
供貨商信息管理模塊的功能需要由clsprovider類(lèi)、clsproviders類(lèi)來(lái)實(shí)現(xiàn)。其主要功能為:供貨商信息的添加、供貨商信息的修改、供貨商信息的刪除、供貨商信息的查找。
(1)供貨商信息管理clsprovider類(lèi)。供貨商信息clsprovider類(lèi)主要用來(lái)完成供貨商信息的基本操作功能,如添加、修改、刪除等。
具體操作:首先選擇VB菜單里找到“工程”子菜單中“添加類(lèi)模塊”命令,然后打開(kāi)“添加類(lèi)模塊”對(duì)話框,選擇“vb類(lèi)生成器”,使用類(lèi)生成器,最后在工程中添加clsprovider類(lèi),其中屬性聲明均為get/let。屬性添加完畢并應(yīng)用后,clsprovider類(lèi)中已經(jīng)自動(dòng)添加了類(lèi)的成員變量和其相應(yīng)的屬性?;静挥米鋈魏涡薷木涂梢詰?yīng)用。下面為clsprovider類(lèi)添加方法。
①AddNew方法。該方法返回值為gxcaddnew類(lèi)型。主要功能:?jiǎn)蝹€(gè)供貨商信息的添加。設(shè)計(jì)思路:首先檢測(cè)供貨商名稱(chēng)是否存在,然后執(zhí)行相關(guān)sql語(yǔ)句,如果操作成功記錄當(dāng)前id的最大值,最后返回操作結(jié)果。
②Update方法。該方法返回值為gxcupdate類(lèi)型。主要功能:修改供貨商信息。設(shè)計(jì)思路:首先判斷供貨商id是否存在,供貨商名稱(chēng)是否重復(fù),然后執(zhí)行相關(guān)sql語(yǔ)句并執(zhí)行,最后返回操作結(jié)果。
③Delete方法。該方法返回值為gxcdelete類(lèi)型。主要功能:刪除供貨商信息。設(shè)計(jì)思路:首先判斷參數(shù)是否使用默認(rèn)值,然后開(kāi)始執(zhí)行相關(guān)事務(wù)(刪除供貨信息、刪除供貨商信息),接受(完成)事務(wù),最后返回操作結(jié)果。刪除供貨商時(shí),必須先刪除與這個(gè)供貨商相關(guān)的供貨信息,通常要把這兩個(gè)操作放在一個(gè)事務(wù)里面。
(2)供貨商信息管理集合clsproviders類(lèi)。clsproviders類(lèi)主要用來(lái)處理多條供貨商信息,其中最小的單元是clsprovider。
具體操作:首先選擇菜單“工程”子菜單里“添加類(lèi)模塊”命令,然后打開(kāi)“添加類(lèi)模塊”對(duì)話框,選擇“vb類(lèi)生成器”,使用類(lèi)生成器在工程中添加一個(gè)集合類(lèi),命名為clsproviders類(lèi),在“集合組成”欄中選擇clsprovider類(lèi),為clsproviders添加必要的方法。
①addex方法
Public sub addex(obj as clsprovider)
mcol.add obj,“a”&obj.id
②find方法。該方法返回值為clsproviders類(lèi)型。參數(shù)設(shè)計(jì)一個(gè)可選的類(lèi)型id,默認(rèn)值為-1。如果省略參數(shù)時(shí),返回全部供貨商。設(shè)計(jì)思路:首先判斷傳入?yún)?shù)是否為默認(rèn)值,然后根據(jù)參數(shù)執(zhí)行相關(guān)sql語(yǔ)句,最后將查到的結(jié)果加入集合返回類(lèi)本身。
供貨信息管理模塊的功能需要由clsbuy類(lèi)、clsbuys類(lèi)來(lái)實(shí)現(xiàn),它的主要功能是:除了添加、修改、刪除、查找供貨信息,還多了按商品統(tǒng)計(jì)分析供貨信息。
(1)供貨信息管理clsbuy類(lèi)。供貨信息clsbuy類(lèi)用來(lái)處理單條供貨信息,完成供貨信息的添加、修改、刪除等基本操作功能。
操作流程:首先選擇菜單“工程”里“添加類(lèi)模塊”命令,打開(kāi)“添加類(lèi)模塊”對(duì)話框,然后選擇“vb類(lèi)生成器”,使用類(lèi)生成器在工程中添加clsbuy類(lèi),屬性聲明均為get/let。基本不用做任何修改就可以應(yīng)用。下面來(lái)為clsbuy類(lèi)添加方法。
①AddNew方法。該方法的返回值為gxcaddnew類(lèi)型。主要功能:添加單條供貨信息。設(shè)計(jì)思路:獲取對(duì)應(yīng)商品的信息,然后開(kāi)始執(zhí)行事務(wù)(組織sql語(yǔ)句并執(zhí)行-更新庫(kù)存),接受(結(jié)束)事務(wù),最后如果操作成功則記錄當(dāng)前id的最大值,返回操作結(jié)果。供貨信息與前面其它類(lèi)相比難點(diǎn)在于對(duì)供貨信息進(jìn)行操作時(shí),必須同時(shí)對(duì)庫(kù)存進(jìn)行相應(yīng)的操作。
②Update方法。該方法的返回值為gxcupdate類(lèi)型。主要功能:修改供貨信息。設(shè)計(jì)思路:判斷供貨id是否存在-獲取對(duì)應(yīng)商品的信息-獲取原來(lái)的供貨量-開(kāi)始事務(wù)-組織sql語(yǔ)句并執(zhí)行-更新庫(kù)存-接受事務(wù)-返回操作結(jié)果。
③delete方法。該方法的返回值為gxcdelete類(lèi)型。主要功能:刪除供貨信息。設(shè)計(jì)思路:首先判斷參數(shù)是否取默認(rèn)值,然后獲取對(duì)應(yīng)商品信息、獲取原來(lái)的供貨量,接著開(kāi)始執(zhí)行事務(wù)(運(yùn)行sql語(yǔ)句,更新庫(kù)存)結(jié)束事務(wù),最后返回操作結(jié)果。在刪除函數(shù)中有同樣的問(wèn)題:刪除供貨操作時(shí),要相應(yīng)地更新庫(kù)存,而這樣就必須在刪除供貨信息之前獲取原有的供貨量是多少,注意應(yīng)把刪除供貨與更新庫(kù)存這兩個(gè)操作放在一個(gè)事務(wù)里面。
(2)供貨信息集合管理clsbuys類(lèi)。主要用來(lái)處理多條供貨信息,其中最小的單元是clsbuy。在添加方法時(shí)與clsproviders類(lèi)添加前兩種方法相似,但是由于多了統(tǒng)計(jì)功能,所以還需要使用到FindStorage方法。
主要功能:統(tǒng)計(jì)各種商品的供貨次數(shù)和累計(jì)供貨總支出,最后按供貨總支出排序,結(jié)果以clsbuys類(lèi)型返回,最多返回前ncount條記錄。返回值:clsbuys類(lèi)型,一個(gè)clsbuy的集合。設(shè)計(jì)思路:根據(jù)傳入?yún)?shù)組織sql語(yǔ)句并執(zhí)行,此語(yǔ)句中以商品來(lái)分組,首先計(jì)算供貨次數(shù)和累計(jì)供貨總支出,然后將查到的結(jié)果以累計(jì)供貨總支出排序,再將前ncount條記錄加入集合,最后返回類(lèi)本身。
至此,供貨商管理模塊的基本功能已經(jīng)實(shí)現(xiàn),如圖2所示。
圖2 供貨商管理模塊
銷(xiāo)售信息管理模塊的功能需要由clssell類(lèi)、clssells類(lèi)來(lái)實(shí)現(xiàn),主要功能是:添加銷(xiāo)售信息、修改銷(xiāo)售信息、刪除銷(xiāo)售信息、查找銷(xiāo)售信息、按商品統(tǒng)計(jì)分析銷(xiāo)售信息、其它與銷(xiāo)售信息相關(guān)的常用操作。銷(xiāo)售信息類(lèi)clssetll用來(lái)具體處理單條銷(xiāo)售信息,完成銷(xiāo)售信息的基本操作功能,如添加、修改、刪除等。clssell類(lèi)中的addnew、update和delete方法,與供貨信息中的處理很類(lèi)似,只是數(shù)據(jù)庫(kù)中的字段不同而已。不過(guò)在實(shí)現(xiàn)過(guò)程中仍然要注意銷(xiāo)售信息的操作同樣會(huì)影響到庫(kù)存,所以在實(shí)現(xiàn)這三個(gè)方法時(shí),要將操作銷(xiāo)售表與更新庫(kù)存放在一個(gè)事務(wù)中執(zhí)行,確保數(shù)據(jù)完整性。
添加clssells類(lèi)的大部分函數(shù)實(shí)現(xiàn)與clsbuys類(lèi)很類(lèi)似,在此不做過(guò)多的介紹,主要介紹下findstorage方法的設(shè)計(jì)與實(shí)現(xiàn)。
主要功能:統(tǒng)計(jì)各種商品的銷(xiāo)售登記次數(shù)和累計(jì)銷(xiāo)售總收入,最后按累計(jì)銷(xiāo)售總收入來(lái)排序,結(jié)果以clssells類(lèi)型返回,最多返回前ncount條記錄。返回值:clssells類(lèi)型,一個(gè)clssell的集合。設(shè)計(jì)思路:根據(jù)傳入?yún)?shù)組織sql語(yǔ)句并執(zhí)行,此語(yǔ)句中以商品分組,首先計(jì)算銷(xiāo)售登記次數(shù)和累計(jì)銷(xiāo)售總收入,然后將查到的結(jié)果以累計(jì)銷(xiāo)售總收入排序,接著將前ncount條記錄加入集合,最后返回類(lèi)本身。如圖3所示。
圖3 銷(xiāo)售管理模塊
在充分理解供應(yīng)鏈概念的基礎(chǔ)上,結(jié)合計(jì)算機(jī)軟件工具,梳理了在ERP環(huán)境下超市供應(yīng)鏈管理系統(tǒng)的相關(guān)重要技術(shù),分別對(duì)采購(gòu)管理(供貨管理)、庫(kù)存管理(商品管理)、銷(xiāo)售管理三大核心模塊進(jìn)行了研究。通過(guò)驅(qū)動(dòng)供應(yīng)鏈管理[5],旨在提高超市管理中的物流水平,實(shí)現(xiàn)高效供貨、有效庫(kù)存、時(shí)效銷(xiāo)售三大功能,從而使管理者能更快更好做出決策,提高超市管理水平和銷(xiāo)售總價(jià)值。
[1]黃睿,劉昌明.淺談電子商務(wù)與ERP的整合[J].中國(guó)電子商務(wù),2010,(1).
[2]曹錫軍.基于ERP供應(yīng)鏈管理研究[J].行政事業(yè)資產(chǎn)與財(cái)務(wù),2012,(11).
[3]趙芳.中小企業(yè)ERP環(huán)境下供應(yīng)鏈管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[M].大連:大連理工大學(xué),2005.
[4]袁宏杰.供應(yīng)鏈管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].物流技術(shù),2009,28(4).
[5]李濤.供應(yīng)鏈和ERP在電子商務(wù)模擬教學(xué)系統(tǒng)中的應(yīng)用[J].北京航天航空大學(xué)學(xué)報(bào),2006,(3).