專利名稱::一種通過配置沖突矩陣解決管理軟件內(nèi)部功能操作沖突的方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種計算機應(yīng)用
技術(shù)領(lǐng)域:
,具體地說是一種通過配置沖突矩陣解決管理軟件內(nèi)部功能操作沖突的方法。
背景技術(shù):
:在管理軟件中,往往不同的功能之間,或者同一個功能的不同操作之間會有一定的約束沖突關(guān)系,比如財務(wù)月結(jié)和憑證制單,如果系統(tǒng)正在進行某個月份的月結(jié),而此時另外一個用戶登錄系統(tǒng)并制作了一張月結(jié)月份的憑證;再比如一個操作員正在修改一個單據(jù)編號為001的報銷單,而此時另一個操作員登錄系統(tǒng)并審批通過這張編號為001的報銷單,這樣可能的結(jié)果是審批人看到的報銷金額和修改后的有出入,本來不能通過審批的報銷通過了或者本來能夠報銷的單據(jù)被否決,等等這些都會導致系統(tǒng)最后數(shù)據(jù)計算結(jié)果有差異或者是業(yè)務(wù)邏輯控制不嚴密而產(chǎn)生業(yè)務(wù)錯誤。為了控制這些,很多軟件都是依賴于數(shù)據(jù)庫自身的數(shù)據(jù)鎖機制進行控制,但是通過這種方式有兩個比較嚴重的弊端,其一是有時一個操作可能需要鎖多個表和數(shù)據(jù),不但加鎖麻煩而且有些數(shù)據(jù)表是一表多用,會限制其它業(yè)務(wù)單據(jù)無法進行一些操作;其二是當發(fā)生沖突時提示不友好,可能是直接來自數(shù)據(jù)庫的數(shù)據(jù)鎖信息,比如上面的第二個報銷單審批的例子,通過本技術(shù)方案的處理,第二個操作員進入審批時就可以提示類似這樣的信息“xx正在進行修改當前單據(jù),現(xiàn)在您只能查看而不能審批本張單據(jù)”,這樣在避免差錯的同時,提示友好易懂。正是基于以上原因,我們提出了該項通過沖突矩陣的方式解決此類問題的技術(shù)方案。
發(fā)明內(nèi)容本發(fā)明的目的是提供一種通過配置沖突矩陣解決管理軟件內(nèi)部功能操作沖突的方法。本發(fā)明的目的是按以下方式實現(xiàn)的,包括下列步驟和內(nèi)容A、將軟件單個功能的各類操作或者不同功能之間以二維矩陣的方式存儲其對照約束關(guān)系;其中單個功能是指管理軟件中包含的軟件功能基本單元,包括入庫單,出庫單,庫存單據(jù)記賬;操作是指對于單個功能用戶進行的操作行為,包括單據(jù)新增,刪除,修改;二維矩陣的方式存儲其對照約束關(guān)系包括以下內(nèi)容(1)以二維矩陣的方式描述沖突對應(yīng)關(guān)系,其中關(guān)系對象包括功能之間,包括庫存記賬,入庫單制單;以及相同功能的不同操作之間,包括入庫單的修改功能和參照采購到貨單功能;(2)二維矩陣中記錄沖突類型,包括獨立運行,功能沖突,數(shù)據(jù)沖突;(3)二維矩陣中記錄檢查到有沖突功能存在時的提示信息并且提示信息中包換值變量供運行期根據(jù)實際值進行替換;(4)二維矩陣中記錄沖突發(fā)生的條件公式,在運行期解析引擎解析條件公式并判斷是否產(chǎn)生實際沖突;b、在軟件運行期間根據(jù)需要配置步驟a中所描述的約束關(guān)系;包括以下內(nèi)容(1)軟件在運行期根據(jù)需要調(diào)整沖突矩陣中的任何內(nèi)容;(2)沖突矩陣中的內(nèi)容被調(diào)整后,能夠自動根據(jù)當前運行的客戶端及其功能和操作進行自動同步,使調(diào)整既能立即生效同時又不影響正在運行的程序;c、對于在存在約束關(guān)系的操作或者功能,在程序運行時能夠根據(jù)沖突矩陣自動檢查并根據(jù)沖突類型有效處理來自其他登錄用戶的操作或者功能產(chǎn)生的沖突;包括以下內(nèi)容(1)系統(tǒng)中存在沖突功能和操作的運行記錄表;(2)在沖突矩陣中存在的功能或者功能操作在執(zhí)行時結(jié)合沖突條件檢查運行記錄表中是否有沖突功能或者沖突數(shù)據(jù)存在;(3)沖突的提示信息根據(jù)沖突矩陣中獲取,并對其中的值變量進行替換后提醒操作者;(4)支持同一個操作員id同時從不同的客戶端登錄,沖突記錄id中包含登錄用戶名以及登錄電腦的IP信息。D、設(shè)置一個沖突矩陣配置表,其結(jié)構(gòu)如下所示<table>tableseeoriginaldocumentpage6</column></row><table><table>tableseeoriginaldocumentpage7</column></row><table>1)在運行期,存在于沖突矩陣中的功能在執(zhí)行時,需要利用沖突功能運行記錄表進行沖突功能記錄,其結(jié)構(gòu)如下所示<table>tableseeoriginaldocumentpage7</column></row><table>2)矩陣配置功能的實現(xiàn),通過圖形界面的方式提供各個功能及功能操作的配置關(guān)系的查看,修改,保存以及生效功能;3)運行期的檢查注冊功能如下>沖突注冊用于向沖突功能運行記錄表中注冊正準備運行的功能或者正準備進行的操作,在正式注冊前需要調(diào)用沖突檢查功能,先檢查是否有沖突功能存在;>取消沖突注冊刪除指定的沖突項目在沖突功能運行記錄表中的記錄,一般在一個沖突功能操作完成后進行,包括庫存入庫單已經(jīng)保存,這時需要清除這張單據(jù)的修改沖突注冊;>清除沖突注冊清除某個用戶下的某個功能或者全部沖突項目的注冊,包括當用戶退出系統(tǒng)時,需要清除所有該用戶下的沖突記錄;>沖突檢查檢查指定的沖突項目是否存在,包括打開一個出庫單,點擊“修改”,在進行沖突注冊前,根據(jù)沖突功能運行記錄表中的記錄檢查是否存在沖突功能;4)異常沖突注冊清除,有時由于其它異常原因,包括突然斷電導致沖突功能運行記錄表中存在的注冊記錄未被清除,這些記錄繼續(xù)留著會影響后續(xù)的一些功能操作,這時通過這個功能進行定點清除。本發(fā)明的優(yōu)異效果幫助操作員如何通過沖突矩陣有效解決管理軟件中的不同功能之間或者同種功能的不同操作之間由于業(yè)務(wù)原因而產(chǎn)生的沖突,從而避免由于沖突而導致功能或者操作之間的相互干擾而引起的數(shù)據(jù)不一致,計算結(jié)果有差異等情況的發(fā)生,使管理軟件自身的業(yè)務(wù)嚴密,數(shù)據(jù)準確。具體實施例方式實施例1、首先設(shè)置一個沖突矩陣配置表,其結(jié)構(gòu)如下所示<table>tableseeoriginaldocumentpage8</column></row><table><table>tableseeoriginaldocumentpage9</column></row><table>從上面的表格中,可以看出沖突矩陣的配置項目。2、在運行期,存在于沖突矩陣中的功能在執(zhí)行時,需要利用沖突功能運行記錄表進行沖突功能記錄,其結(jié)構(gòu)如下所示<table>tableseeoriginaldocumentpage9</column></row><table>3、矩陣配置功能的實現(xiàn)。通過圖形界面的方式提供各個功能及功能操作的配置關(guān)系的查看,修改,保存以及生效功能。4、運行期的檢查注冊功能主要如下>沖突注冊用于向沖突功能運行記錄表中注冊正準備運行的功能或者正準備進行的操作,在正式注冊前需要調(diào)用沖突檢查功能,先檢查是否有沖突功能存在。>取消沖突注冊刪除指定的沖突項目在沖突功能運行記錄表中的記錄。般在一個沖突功能操作完成后進行,比如庫存入庫單已經(jīng)保存,這時需要清除這張單據(jù)的修改沖突注冊。>清除沖突注冊清除某個用戶下的某個功能或者全部沖突項目的注冊。比如當用戶退出系統(tǒng)時,需要清除所有該用戶下的沖突記錄。>沖突檢查檢查指定的沖突項目是否存在。比如打開一個出庫單,點擊“修改”,在進行沖突注冊前,根據(jù)沖突功能運行記錄表中的記錄檢查是否存在沖突功能。5、異常沖突注冊清除。有時由于其它異常原因,比如突然斷電等,導致沖突功能運行記錄表中存在的注冊記錄未被清除,這些記錄繼續(xù)留著會影響后續(xù)的一些功能操作,這時可以通過這個功能進行定點清除。權(quán)利要求一種通過配置沖突矩陣解決管理軟件內(nèi)部功能操作沖突的方法,其特征在于,包括下列步驟和內(nèi)容A、將軟件單個功能的各類操作或者不同功能之間以二維矩陣的方式存儲其對照約束關(guān)系;其中單個功能是指管理軟件中包含的軟件功能基本單元,包括入庫單,出庫單,庫存單據(jù)記賬;操作是指對于單個功能用戶進行的操作行為,包括單據(jù)新增,刪除,修改;二維矩陣的方式存儲其對照約束關(guān)系包括以下內(nèi)容(1)以二維矩陣的方式描述沖突對應(yīng)關(guān)系,其中關(guān)系對象包括功能之間,包括庫存記賬,入庫單制單;以及相同功能的不同操作之間,包括入庫單的修改功能和參照采購到貨單功能;(2)二維矩陣中記錄沖突類型,包括獨立運行,功能沖突,數(shù)據(jù)沖突;(3)二維矩陣中記錄檢查到有沖突功能存在時的提示信息并且提示信息中包換值變量供運行期根據(jù)實際值進行替換;(4)二維矩陣中記錄沖突發(fā)生的條件公式,在運行期解析引擎解析條件公式并判斷是否產(chǎn)生實際沖突;B、在軟件運行期間根據(jù)需要配置步驟A中所描述的約束關(guān)系;包括以下內(nèi)容(1)軟件在運行期根據(jù)需要調(diào)整沖突矩陣中的任何內(nèi)容;(2)沖突矩陣中的內(nèi)容被調(diào)整后,能夠自動根據(jù)當前運行的客戶端及其功能和操作進行自動同步,使調(diào)整既能立即生效同時又不影響正在運行的程序;C、對于在存在約束關(guān)系的操作或者功能,在程序運行時能夠根據(jù)沖突矩陣自動檢查并根據(jù)沖突類型有效處理來自其他登錄用戶的操作或者功能產(chǎn)生的沖突;包括以下內(nèi)容(1)系統(tǒng)中存在沖突功能和操作的運行記錄表;(2)在沖突矩陣中存在的功能或者功能操作在執(zhí)行時結(jié)合沖突條件檢查運行記錄表中是否有沖突功能或者沖突數(shù)據(jù)存在;(3)沖突的提示信息根據(jù)沖突矩陣中獲取,并對其中的值變量進行替換后提醒操作者;(4)支持同一個操作員ID同時從不同的客戶端登錄,沖突記錄ID中包含登錄用戶名以及登錄電腦的IP信息;D、設(shè)置一個沖突矩陣配置表,其結(jié)構(gòu)如下所示列說明列名示例類型空值注釋功能1F_GNBHChar(6)No相沖突功能2F_CTGNChar(6)Yes說明F_SMVarchar(254)Yes在沖突發(fā)生時顯示給用戶的信息,用如下變量@JQ--相沖突的機器@YH--相沖突的用戶@XT--相沖突的系統(tǒng)@GN-相沖突的功能@CX--相沖突的程序@JC--相沖突的進程還可以用參數(shù)的值@ValX沖突方式F_CTFSChar(1)Yes0--獨立運行1--功能沖突2--數(shù)據(jù)沖突3-系統(tǒng)內(nèi)獨立運行參數(shù)定義F_CSDYVarchar(12)Yes各參數(shù)長度定義,如84,表示兩個參數(shù),第一個為8位,第二個為4位等,對于變長的可補空格沖突條件F_CTTJVarchar(254)Yes當符合條件時,表示沖突可以采用變量來字義,變量格式如下@valX別人已在操作的@cvalX正要操作其中X為操作數(shù)據(jù)中的第X個數(shù)據(jù),與上面的參數(shù)定義對應(yīng)@cval1=@val1and@cval2<@val21)在運行期,存在于沖突矩陣中的功能在執(zhí)行時,需要利用沖突功能運行記錄表進行沖突功能記錄,其結(jié)構(gòu)如下所示列說明列名示例類型空值注釋進程號F_JCChar(10)No操作數(shù)據(jù)F_SJVarchar(230)No有多個數(shù)據(jù)項,每個之間可以有一個間隔符2)矩陣配置功能的實現(xiàn),通過圖形界面的方式提供各個功能及功能操作的配置關(guān)系的查看,修改,保存以及生效功能;3)運行期的檢查注冊功能如下沖突注冊用于向沖突功能運行記錄表中注冊正準備運行的功能或者正準備進行的操作,在正式注冊前需要調(diào)用沖突檢查功能,先檢查是否有沖突功能存在;取消沖突注冊刪除指定的沖突項目在沖突功能運行記錄表中的記錄,一般在一個沖突功能操作完成后進行,包括庫存入庫單已經(jīng)保存,這時需要清除這張單據(jù)的修改沖突注冊;清除沖突注冊清除某個用戶下的某個功能或者全部沖突項目的注冊,包括當用戶退出系統(tǒng)時,需要清除所有該用戶下的沖突記錄;沖突檢查檢查指定的沖突項目是否存在,包括打開一個出庫單,點擊“修改”,在進行沖突注冊前,根據(jù)沖突功能運行記錄表中的記錄檢查是否存在沖突功能;4)異常沖突注冊清除,有時由于其它異常原因,包括突然斷電導致沖突功能運行記錄表中存在的注冊記錄未被清除,這些記錄繼續(xù)留著會影響后續(xù)的一些功能操作,這時通過這個功能進行定點清除。FSA00000075788900031.tif,FSA00000075788900032.tif,FSA00000075788900033.tif,FSA00000075788900034.tif全文摘要本發(fā)明提供一種通過配置沖突矩陣解決管理軟件內(nèi)部功能操作沖突的方法,該方法能過幫助操作員如何通過沖突矩陣有效解決管理軟件中的不同功能之間或者同種功能的不同操作之間由于業(yè)務(wù)原因而產(chǎn)生的沖突,從而避免由于沖突而導致功能或者操作之間的相互干擾而引起的數(shù)據(jù)不一致,計算結(jié)果有差異等情況的發(fā)生,使管理軟件自身的業(yè)務(wù)嚴密,數(shù)據(jù)準確。文檔編號G06Q10/00GK101833473SQ201010138849公開日2010年9月15日申請日期2010年4月6日優(yōu)先權(quán)日2010年4月6日發(fā)明者楊平波申請人:浪潮集團山東通用軟件有限公司