亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Drools規(guī)則引擎在管理會(huì)計(jì)系統(tǒng)設(shè)計(jì)中的應(yīng)用研究

        2019-10-23 03:20:30朱龍梅
        微型電腦應(yīng)用 2019年10期
        關(guān)鍵詞:引擎規(guī)則數(shù)據(jù)庫(kù)

        朱龍梅

        (陜西財(cái)經(jīng)職業(yè)技術(shù)學(xué)院 管理學(xué)院, 咸陽(yáng) 712000)

        0 引言

        管理會(huì)計(jì)系統(tǒng)在企業(yè)日常經(jīng)營(yíng)過(guò)程中起到非常重要的作用,將企業(yè)的盈虧狀況及時(shí)反映給企業(yè)管理者,從而為合理經(jīng)營(yíng)策略的制定提供依據(jù),第三方支付隨著電子商務(wù)的發(fā)展而得到普遍應(yīng)用,隨之而來(lái)的是不斷增長(zhǎng)的日交易訂單數(shù),傳統(tǒng)的管理會(huì)計(jì)系統(tǒng)在錄入每筆交易的會(huì)計(jì)憑證和分錄時(shí)自動(dòng)化程度較低,難以做到自動(dòng)化的試算平衡,無(wú)法提供業(yè)務(wù)規(guī)則,難以滿足不斷增長(zhǎng)的業(yè)務(wù)需求,管理會(huì)計(jì)系統(tǒng)需記錄每筆業(yè)務(wù)資金往來(lái),穩(wěn)定高效的管理會(huì)計(jì)系統(tǒng)是目前研究的重點(diǎn)之一[1]。

        1 管理會(huì)計(jì)系統(tǒng)設(shè)計(jì)

        1.1 系統(tǒng)數(shù)據(jù)處理過(guò)程

        作為綜合應(yīng)用系統(tǒng),管理會(huì)計(jì)系統(tǒng)規(guī)模龐大、數(shù)據(jù)量大,系統(tǒng)設(shè)計(jì)時(shí)需具備一定的擴(kuò)展性,從而能夠更好的滿足不斷增長(zhǎng)的業(yè)務(wù)需求。本文從滿足實(shí)際會(huì)計(jì)業(yè)務(wù)需求的角度出發(fā),完成系統(tǒng)總體目標(biāo)的確定,提高系統(tǒng)的性能和安全性,該系統(tǒng)采用B/S架構(gòu),用戶同管理會(huì)計(jì)系統(tǒng)的交互通過(guò)互聯(lián)網(wǎng)瀏覽器(如IE, CHROME, SAFARI等)即可實(shí)現(xiàn),無(wú)需安裝客戶端,用戶先向業(yè)務(wù)系統(tǒng)發(fā)起在線交易(通過(guò)HTTP/TCP請(qǐng)求),交易系統(tǒng)將數(shù)據(jù)記錄到數(shù)據(jù)庫(kù)中,并通過(guò)TCP/IP協(xié)議向Apache ActiveMQ服務(wù)器發(fā)送Active MQ消息,數(shù)據(jù)接收處理子系統(tǒng)對(duì)active MQ服務(wù)器的消息進(jìn)行讀取后再通過(guò)Netty通信框架完成規(guī)則引擎子系統(tǒng)接口的調(diào)用,在此基礎(chǔ)上將交易消息轉(zhuǎn)換成會(huì)計(jì)憑證后發(fā)送給規(guī)則引擎子系統(tǒng)進(jìn)行處理:將會(huì)計(jì)憑證依據(jù)預(yù)先定義的會(huì)計(jì)規(guī)則完成相應(yīng)會(huì)計(jì)分錄的轉(zhuǎn)換,通過(guò)JDBC實(shí)現(xiàn)規(guī)則引擎同Oracle數(shù)據(jù)庫(kù)的連接,在同一個(gè)數(shù)據(jù)庫(kù)事務(wù)里記錄對(duì)應(yīng)的會(huì)計(jì)憑證和會(huì)計(jì)分錄,從而保證了數(shù)據(jù)的完整性和一致性,由業(yè)務(wù)系統(tǒng)向管理會(huì)計(jì)系統(tǒng)主動(dòng)推送數(shù)據(jù)實(shí)現(xiàn)[2]。

        對(duì)于會(huì)計(jì)批處理任務(wù)則通過(guò)ORACLE的DBlink技術(shù)實(shí)現(xiàn),管理會(huì)計(jì)系統(tǒng)的數(shù)據(jù)庫(kù)同各業(yè)務(wù)系統(tǒng)的數(shù)據(jù)庫(kù)備庫(kù)連接,完成各大業(yè)務(wù)系統(tǒng)歷史交易數(shù)據(jù)的快速讀取,然后將其轉(zhuǎn)換為會(huì)計(jì)憑證對(duì)象寫(xiě)入緩存中,系統(tǒng)通過(guò)Drools規(guī)則引擎子系統(tǒng)接口的調(diào)用接收到緩存中的會(huì)計(jì)憑證對(duì)象,規(guī)則引擎在數(shù)據(jù)庫(kù)中記錄每筆會(huì)計(jì)憑證,再將憑證轉(zhuǎn)換成會(huì)計(jì)分錄并記錄到數(shù)據(jù)庫(kù)中,會(huì)計(jì)憑證和會(huì)計(jì)分錄間為一對(duì)多的關(guān)系。財(cái)務(wù)人員通過(guò)會(huì)計(jì)規(guī)則和后臺(tái)管理子系統(tǒng),對(duì)會(huì)計(jì)記賬規(guī)則使用的基礎(chǔ)數(shù)據(jù)(如如會(huì)計(jì)科目、銀行網(wǎng)關(guān)等)進(jìn)行維護(hù),及時(shí)調(diào)整規(guī)則引擎記賬出錯(cuò)的數(shù)據(jù)。

        1.2 系統(tǒng)總體軟件架構(gòu)

        為使軟件設(shè)計(jì)便于模塊化和標(biāo)準(zhǔn)化操作和管理,系統(tǒng)設(shè)計(jì)采用了三層架構(gòu)體系,即數(shù)據(jù)訪問(wèn)層、業(yè)務(wù)邏輯層和表現(xiàn)層,系統(tǒng)軟件架構(gòu)具體如圖1所示。

        圖1 管理會(huì)計(jì)系統(tǒng)軟件架構(gòu)圖

        (1) 表現(xiàn)層,使用網(wǎng)絡(luò)瀏覽器方式進(jìn)行展示,主要功能在于同各大業(yè)務(wù)系統(tǒng)間進(jìn)行交互操作,供外部最終用戶使用,如使用網(wǎng)銀完成在線付款,用戶通過(guò)瀏覽器的使用完成相關(guān)業(yè)務(wù)的瀏覽和操作。內(nèi)部員工通過(guò)后臺(tái)管理子系統(tǒng)實(shí)現(xiàn)會(huì)計(jì)科目、銀行網(wǎng)關(guān)、銀行費(fèi)率等的設(shè)置與審核,及查詢導(dǎo)出報(bào)表等功能,顯著提高了系統(tǒng)操作及使用的便利性。

        (2) 業(yè)務(wù)邏輯層,主要負(fù)責(zé)實(shí)現(xiàn)系統(tǒng)的主要業(yè)務(wù)邏輯,包括數(shù)據(jù)接收處理、規(guī)則引擎、規(guī)則管理及會(huì)計(jì)后臺(tái)管理四個(gè)重要的子系統(tǒng),并為短信系統(tǒng)、郵件系統(tǒng)提供外在接口,當(dāng)完成某些具體業(yè)務(wù)后,例如某個(gè)會(huì)計(jì)日的交易數(shù)據(jù)通過(guò)數(shù)據(jù)接收處理子系統(tǒng)已經(jīng)完成會(huì)計(jì)憑證和會(huì)計(jì)分錄的生成,系統(tǒng)會(huì)以短信和郵件的方式通知相關(guān)財(cái)務(wù)人員;或在系統(tǒng)發(fā)生錯(cuò)誤時(shí)及時(shí)通知開(kāi)發(fā)人員,各業(yè)務(wù)系統(tǒng)的交易數(shù)據(jù)消息的接收則通過(guò)ActiveMq消息隊(duì)列系統(tǒng)實(shí)現(xiàn)。通過(guò)Memocached緩存系統(tǒng)中相關(guān)數(shù)據(jù)的使用,從而提升了系統(tǒng)性能[3]。

        (3) 數(shù)據(jù)訪問(wèn)層,該層通過(guò)JDBC連接到業(yè)務(wù)邏輯層,使用關(guān)系型數(shù)據(jù)庫(kù)Oracle對(duì)會(huì)計(jì)系統(tǒng)的基礎(chǔ)數(shù)據(jù)(包括會(huì)計(jì)規(guī)則中涉及的基礎(chǔ)數(shù)據(jù)、會(huì)計(jì)科目、銀行網(wǎng)關(guān)等)進(jìn)行管理,該數(shù)據(jù)庫(kù)還負(fù)責(zé)保存用于會(huì)計(jì)記賬的憑證和分錄等數(shù)據(jù);不允許測(cè)試環(huán)境訪問(wèn)生產(chǎn)環(huán)境數(shù)據(jù)以保證交易機(jī)密數(shù)據(jù)的安全,并且需專門(mén)的DBA執(zhí)行數(shù)據(jù)庫(kù)中DML、DDL的發(fā)布。財(cái)務(wù)人員和公司管理層具備報(bào)表的查詢和導(dǎo)出權(quán)限(包括利潤(rùn)表、現(xiàn)金流量表、資產(chǎn)負(fù)債表等),業(yè)務(wù)系統(tǒng)與本系統(tǒng)數(shù)據(jù)庫(kù)間跨庫(kù)高速訪問(wèn)則通過(guò)使用DBlink技術(shù)實(shí)現(xiàn)[4]。

        業(yè)務(wù)邏輯模塊因使用Drools規(guī)則引擎而得以獨(dú)立出來(lái),實(shí)現(xiàn)了在代碼層次的松藕合,將xml或drl規(guī)則文件在線編輯好即可實(shí)現(xiàn)對(duì)會(huì)計(jì)記賬規(guī)則的新增或修改,避免重新編譯代碼和新系統(tǒng)版本發(fā)布所增加的工作量,各子系統(tǒng)統(tǒng)一采用代碼架構(gòu)層次清晰的Saturn框架,易于維護(hù)和擴(kuò)展,Saturn框架如圖2所示。

        圖2 Saturn框架

        2 系統(tǒng)實(shí)現(xiàn)

        2.1 單筆交易數(shù)據(jù)的接收與處理

        (1) 數(shù)據(jù)消息接收

        數(shù)據(jù)接收處理子系統(tǒng)使用開(kāi)源的Apache ActiveMQ完成數(shù)據(jù)的接收,具體通過(guò)在spring配置文件accountfront-biz.xml中添加配置如下:

        value =(TP_ SC_ ACCOUNT_ FRONT REQUEST/)

        完成上述添加配置后,各業(yè)務(wù)系統(tǒng)發(fā)送到隊(duì)列TP_ SC—ACCOUNT_ FRONT_ REQUEST的消息通過(guò)MessageListener對(duì)象即可實(shí)現(xiàn)監(jiān)聽(tīng)和接收[5]。

        (2) 數(shù)據(jù)消息處理

        消息隊(duì)列的消息由MessageListener接收后,需采用統(tǒng)一的JsoN消息格式對(duì)消息進(jìn)行處理,通過(guò)JSONObject對(duì)象的方法如下:

        JSONObject obj=new JSONObject(json);

        String value=obj.getString(keyName);

        將各業(yè)務(wù)系統(tǒng)傳遞來(lái)的交易消息進(jìn)行解析,并將其轉(zhuǎn)換為相應(yīng)的會(huì)計(jì)憑證請(qǐng)求對(duì)象傳遞給規(guī)則引擎子系統(tǒng)進(jìn)行相關(guān)處理(VoucherFacade接口)。

        2.2 批量交易數(shù)據(jù)的接收與處理

        考慮到新增的業(yè)務(wù)系統(tǒng)中所包含的歷史數(shù)據(jù)也需接入到管理會(huì)計(jì)系統(tǒng)中,此種情況則需使用批處理任務(wù)完成,批處理任務(wù)采用多線程方式,首先設(shè)定定時(shí)調(diào)度任務(wù)并完成會(huì)計(jì)日期的選擇,通過(guò)DBLink技術(shù)實(shí)現(xiàn)業(yè)務(wù)系統(tǒng)數(shù)據(jù)的跨庫(kù)批量拉取,并直接將交易數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的會(huì)計(jì)憑證,在通過(guò)規(guī)則引擎子系統(tǒng)接口的調(diào)用將其傳給管理會(huì)計(jì)系統(tǒng)完成會(huì)計(jì)憑證在數(shù)據(jù)庫(kù)中的記錄,并根據(jù)分錄產(chǎn)生規(guī)則完成會(huì)計(jì)憑證到會(huì)計(jì)分錄的轉(zhuǎn)換,同樣在系統(tǒng)數(shù)據(jù)庫(kù)中記入會(huì)計(jì)分錄[6]。

        (1) 系統(tǒng)處理批量交易數(shù)據(jù)的時(shí)序圖

        設(shè)定任務(wù)調(diào)度后,在到達(dá)定時(shí)任務(wù)時(shí)間點(diǎn)時(shí),數(shù)據(jù)接收處理子系統(tǒng)將接收到消息通知,并開(kāi)始執(zhí)行批處理任務(wù),從交易系統(tǒng)數(shù)據(jù)庫(kù)中的交易數(shù)據(jù)緩存到到系統(tǒng)內(nèi)存,將其轉(zhuǎn)換為會(huì)計(jì)憑證后傳送給規(guī)則引擎子系統(tǒng)進(jìn)行模式匹配,即會(huì)計(jì)憑證與會(huì)計(jì)分錄產(chǎn)生規(guī)則的匹配,當(dāng)每筆憑證的數(shù)據(jù)字段匹配到一條規(guī)則的條件部分后,系統(tǒng)自動(dòng)將憑證轉(zhuǎn)換成會(huì)計(jì)分錄,完成數(shù)據(jù)持久層的調(diào)用,并在數(shù)據(jù)庫(kù)中記錄會(huì)計(jì)憑證和會(huì)計(jì)分錄,從而完成自動(dòng)記賬過(guò)程。批量交易數(shù)據(jù)處理的時(shí)序圖如圖3所示。

        圖3 批量數(shù)據(jù)接收處理時(shí)序圖

        (2) 系統(tǒng)處理批量交易數(shù)據(jù)的類圖

        定時(shí)任務(wù)消息偵聽(tīng)對(duì)象接口實(shí)現(xiàn)了該接口的消息監(jiān)測(cè)方法,接收到任務(wù)調(diào)度中心的消息后調(diào)用規(guī)則引擎子系統(tǒng)的RuleEngineServiceProvide接口,再通過(guò)會(huì)計(jì)憑證服務(wù)對(duì)象的調(diào)用,在數(shù)據(jù)庫(kù)中寫(xiě)入會(huì)計(jì)憑證;通過(guò)會(huì)計(jì)分錄服務(wù)的對(duì)象的調(diào)用,在數(shù)據(jù)庫(kù)中寫(xiě)入會(huì)計(jì)分錄,處理批量數(shù)據(jù)的類圖如圖4所示[7]。

        圖4 批量數(shù)據(jù)接收類圖

        3 系統(tǒng)檢測(cè)

        為檢測(cè)基于Drools規(guī)則引擎的管理會(huì)計(jì)系統(tǒng)的穩(wěn)定性和實(shí)用性,具體檢測(cè)方法為:通過(guò)業(yè)務(wù)系統(tǒng)將數(shù)據(jù)傳遞給本文系統(tǒng)以及接入新系統(tǒng)后批量業(yè)務(wù)的處理情況進(jìn)行檢測(cè),結(jié)果表明能夠?qū)崿F(xiàn)在線修改發(fā)生變更后的記賬規(guī)則,具有較強(qiáng)的擴(kuò)展性和兼容性;Saturn編程框架的使用使框架結(jié)構(gòu)更加清晰,無(wú)需具備專業(yè)知識(shí)即可操作本系統(tǒng),系統(tǒng)可以做到實(shí)時(shí)和自動(dòng)記賬,進(jìn)而使公司財(cái)務(wù)成本得以有效降低,在管理會(huì)計(jì)系統(tǒng)中實(shí)現(xiàn)了統(tǒng)一集中各交易系統(tǒng)的數(shù)據(jù)完成記賬過(guò)程,避免重復(fù)記賬問(wèn)題,使數(shù)據(jù)的正確性和完整性得以顯著提升,系統(tǒng)連續(xù)運(yùn)行了3個(gè)月,運(yùn)行穩(wěn)定,累計(jì)使用人次超過(guò)5萬(wàn),同業(yè)務(wù)系統(tǒng)對(duì)接效果較好,單筆及批量交易數(shù)據(jù)的接收與處理過(guò)程未出現(xiàn)錯(cuò)誤,可有效滿足企業(yè)業(yè)務(wù)拓展的會(huì)計(jì)管理需求。

        4 總結(jié)

        本文從管理會(huì)計(jì)的實(shí)際需求出發(fā),主要對(duì)管理會(huì)計(jì)系統(tǒng)進(jìn)行優(yōu)化設(shè)計(jì),研究了Drools規(guī)則引擎在管理會(huì)計(jì)系統(tǒng)設(shè)計(jì)中的應(yīng)用,完成了系統(tǒng)整體軟件結(jié)構(gòu)的設(shè)計(jì),闡述了主要模塊的功能,對(duì)單筆及批量交易數(shù)據(jù)的接收與處理過(guò)程進(jìn)行軟件設(shè)計(jì),從而實(shí)現(xiàn)了會(huì)計(jì)憑證及會(huì)計(jì)分錄的自動(dòng)生成和存儲(chǔ)過(guò)程,實(shí)驗(yàn)檢測(cè)結(jié)果表明該系統(tǒng)能夠有效的提高會(huì)計(jì)記賬的自動(dòng)化水平,具有較高的實(shí)用性。

        猜你喜歡
        引擎規(guī)則數(shù)據(jù)庫(kù)
        撐竿跳規(guī)則的制定
        數(shù)獨(dú)的規(guī)則和演變
        讓規(guī)則不規(guī)則
        Coco薇(2017年11期)2018-01-03 20:59:57
        藍(lán)谷: “涉藍(lán)”新引擎
        商周刊(2017年22期)2017-11-09 05:08:31
        數(shù)據(jù)庫(kù)
        TPP反腐敗規(guī)則對(duì)我國(guó)的啟示
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        無(wú)形的引擎
        河南電力(2015年5期)2015-06-08 06:01:46
        大屁股少妇一区二区无码| 性色av手机在线观看| 日本一区二区三区在线视频播放| 国产一区二区三区视频网| 亚洲中文字幕无码中文字| 麻豆影视视频高清在线观看| 中字幕久久久人妻熟女| 亚洲第一区二区快射影院| 97成人精品在线视频| 五月av综合av国产av| 久久精品视频在线看99| 国产三级精品美女三级| 精品久久一区二区三区av制服 | 亚洲女同恋中文一区二区| 婷婷久久精品国产色蜜蜜麻豆| 一本色道无码道在线观看| 四虎永久免费影院在线| 用力草我小逼视频在线播放| 亚洲精品人成中文毛片| 国产suv精品一区二区6| 国产在线观看黄| 人妻体体内射精一区中文字幕| 少妇高潮太爽了在线视频| 国产乱人伦偷精品视频| 国产成人久久精品流白浆| 91精品国产91综合久久蜜臀| 久久综合噜噜激激的五月天| 国产精品无码成人午夜电影| 在线精品日韩一区二区三区| 麻豆成年人视频在线观看| 欧洲熟妇色xxxx欧美老妇软件 | 性一交一乱一伦| 免费大学生国产在线观看p| 国产av一区二区毛片| av 日韩 人妻 黑人 综合 无码| 久久夜色撩人精品国产小说| 青青草免费在线视频导航| 天天综合网网欲色| 久久久久亚洲av无码专区网站| 玖玖资源站无码专区| 高清日韩av在线免费观看|