專利名稱:通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計(jì)算機(jī)技術(shù),具體地說是一種通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的 方法。
背景技術(shù):
在傳統(tǒng)業(yè)務(wù)管理軟件產(chǎn)品中,往往在提供標(biāo)準(zhǔn)產(chǎn)品時(shí),每個(gè)單據(jù)的參照功能都是 通過編碼寫好的,同時(shí)各個(gè)參照功能也是根據(jù)大部分用戶的需求進(jìn)行設(shè)計(jì)的。最終客戶使 用時(shí),往往希望根據(jù)自己的需要做一些調(diào)整,比如客戶想在未預(yù)置參照關(guān)系的單據(jù)上建立 參照關(guān)系;或者使用自定義單據(jù)并參照系統(tǒng)預(yù)置單據(jù)的數(shù)據(jù)。這類需求是根據(jù)行業(yè)或者不 同用戶是有所變化的,都通過固定的功能是沒有辦法一一滿足的。
發(fā)明內(nèi)容
本發(fā)明的技術(shù)任務(wù)是針對上述現(xiàn)有技術(shù)的不足,提供一種在業(yè)務(wù)管理軟件中通過 動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法。本文件中所指的參照包括單據(jù)間的復(fù)制、核銷和強(qiáng)制核銷。本發(fā)明所述的方法通 過配置可以實(shí)現(xiàn)單據(jù)之間或者單據(jù)自身的數(shù)據(jù)復(fù)制,單據(jù)之間的核銷(核銷時(shí)的強(qiáng)制核 銷)和強(qiáng)制核銷。本發(fā)明的技術(shù)任務(wù)是按以下方式實(shí)現(xiàn)的通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方 法,其特點(diǎn)是包括以下步驟A、使用數(shù)據(jù)模型在任意單據(jù)間動(dòng)態(tài)地配置出參照關(guān)系;B、使用動(dòng)態(tài)表記錄核銷狀態(tài)和數(shù)據(jù)核銷關(guān)系,定義參照關(guān)系并不影響源單據(jù)和目 標(biāo)單據(jù)上原來的邏輯處理;C、使用智能化自動(dòng)生成技術(shù),自動(dòng)形成直接可用的來源單據(jù)選擇窗口 ;D、采用動(dòng)態(tài)緩存技術(shù)進(jìn)行單據(jù)選擇窗口和表單上的相關(guān)標(biāo)識(shí)列和數(shù)值列的計(jì)算, 提高響應(yīng)效率。進(jìn)一步的,步驟A中每一個(gè)單據(jù)都對應(yīng)一個(gè)唯一標(biāo)識(shí)作為邏輯表名,根據(jù)單據(jù)邏輯表名建立 單據(jù)的數(shù)據(jù)模型,通過指定來源單據(jù)和目標(biāo)單據(jù),自動(dòng)加載出其數(shù)據(jù)模型,在此基礎(chǔ)上配置 出來源單據(jù)和目標(biāo)單據(jù)的參照關(guān)系。步驟B中(1)使用動(dòng)態(tài)表記錄單據(jù)參照中的標(biāo)識(shí)列和核銷關(guān)系,依據(jù)源單據(jù)形成對應(yīng)的狀 態(tài)記錄表,存儲(chǔ)核銷標(biāo)識(shí)和核銷數(shù)值,依據(jù)目標(biāo)單據(jù)生成對應(yīng)的關(guān)聯(lián)關(guān)系表,記錄源單據(jù)和 目標(biāo)單據(jù)的關(guān)系;通過動(dòng)態(tài)配置實(shí)現(xiàn)的單據(jù)參照,不影響原來單據(jù)上通過代碼實(shí)現(xiàn)的業(yè)務(wù)邏輯處理。步驟C中,
(1)根據(jù)設(shè)置的不同,自動(dòng)生成特定的來源單據(jù)選擇窗口 ;(2)用戶可以對自動(dòng)形成的來源單據(jù)選擇窗口進(jìn)行數(shù)據(jù)源的調(diào)整。步驟D中,(1)核銷標(biāo)識(shí),核銷數(shù)值,來源單據(jù)等列的值通過計(jì)算公式來獲?。?2)對象形成時(shí)創(chuàng)建緩存,計(jì)算公式直接讀取緩存中的數(shù)據(jù)以迅速展示。具體地說,本發(fā)明的技術(shù)任務(wù)是按以下方式實(shí)現(xiàn)的首先,建立完整的數(shù)據(jù)模型。如步驟A所述,在每一個(gè)單據(jù)都對應(yīng)一個(gè)唯一標(biāo)識(shí)作 為邏輯表名,根據(jù)單據(jù)邏輯表名建立單據(jù)的數(shù)據(jù)模型,即將單據(jù)對應(yīng)的表和表的字段的信 息提取出來并保存在數(shù)據(jù)庫中。其次,以數(shù)據(jù)模型為基礎(chǔ),配置出基于XML描述的單據(jù)參照關(guān)系。參照關(guān)系文件中 存儲(chǔ)來源單據(jù)和目標(biāo)單據(jù)的信息,單據(jù)間的映射關(guān)系,核銷關(guān)系等一些列的信息。對于參照 關(guān)系是核銷類型的生效后將形成狀態(tài)記錄表和關(guān)聯(lián)關(guān)系表。如步驟B所述,所有核銷數(shù)據(jù) 將記錄在狀態(tài)記錄表和關(guān)聯(lián)關(guān)系表中,不影響源單據(jù)和目標(biāo)單據(jù)原來的邏輯處理。最后,對參照關(guān)系進(jìn)行解析,實(shí)現(xiàn)單據(jù)參照功能。參照關(guān)系生效后將在目標(biāo)單據(jù)上 自動(dòng)生成參照工具欄和單據(jù)選擇窗口,如果用戶對數(shù)據(jù)源有額外的要求可修改單據(jù)選擇窗 口上數(shù)據(jù)窗口的數(shù)據(jù)源(如步驟C所述)。點(diǎn)擊工具欄將運(yùn)行參照解析,彈出單據(jù)選擇窗口, 用戶選擇單據(jù)后,將數(shù)據(jù)復(fù)制到目標(biāo)單據(jù),點(diǎn)擊保存時(shí)直接保存到數(shù)據(jù)庫,如果是核銷將繼 續(xù)在后臺(tái)執(zhí)行一下核銷操作,數(shù)據(jù)存在狀態(tài)記錄表和核銷關(guān)系表中。由于核銷標(biāo)識(shí)和核銷 數(shù)值存儲(chǔ)在以上兩個(gè)表中,直接從數(shù)據(jù)庫獲取會(huì)嚴(yán)重影響效率。這里采用動(dòng)態(tài)緩存的方式, 在對象形成時(shí)創(chuàng)建緩存,從緩存中獲取數(shù)據(jù),提高了響應(yīng)效率(如步驟D所述)。本發(fā)明的通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法與現(xiàn)有技術(shù)相比具有以下突出 的有益效果1.按需動(dòng)態(tài)配置實(shí)現(xiàn)參照,部署簡單,靈活性高。2.核銷數(shù)據(jù)與單據(jù)數(shù)據(jù)解耦,支持對已有歷史單據(jù)的參照。3.緩存的使用提高了程序響應(yīng)速度。
附圖1是本發(fā)明方法中通過建立參照關(guān)系的單據(jù)的數(shù)據(jù)模型視圖(以簡單銷售訂 單為例)
具體實(shí)施例方式參照說明書附圖以具體實(shí)施例對本發(fā)明的通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方 法作以下詳細(xì)地說明。實(shí)施例通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法包括以下步驟1、將參與參照的單據(jù)信息放到數(shù)據(jù)模型中。數(shù)據(jù)模型包括單據(jù)包含表的信息,表 之間的關(guān)系,表中字段的信息。通過單據(jù)的邏輯表名獲取整個(gè)單據(jù)的所有信息。如附圖1 所示。2、定義出XML格式的參照關(guān)系描述文檔。參照關(guān)系生效時(shí),自動(dòng)形成目標(biāo)單據(jù)上的參照工具欄。根據(jù)XML格式的參照關(guān)系描述文檔中的配置信息形成單據(jù)選擇窗口的樣式 語法,調(diào)用時(shí)加載,達(dá)到自動(dòng)形成單據(jù)選擇窗口的目的。3、解析XML格式參照關(guān)系描述文檔的對象。將所選數(shù)據(jù)準(zhǔn)確復(fù)制到目標(biāo)單據(jù)上, 如果是核銷的參照關(guān)系,在單據(jù)保存的時(shí)候進(jìn)行核銷。另外還包括各種規(guī)則的解析,比如不 可用條件,不可修改項(xiàng)等規(guī)則。4、核銷時(shí)源單據(jù)和目標(biāo)單據(jù)上顯示信息的處理。源單據(jù)上將顯示當(dāng)前單據(jù)的核銷 狀態(tài),當(dāng)前單據(jù)上具體分錄的核銷狀態(tài),這些信息都存儲(chǔ)在狀態(tài)記錄表中。目標(biāo)單據(jù)上將顯 示來源單據(jù),來源單據(jù)流水,或者還有來源單據(jù)分錄的信息,這些存儲(chǔ)在關(guān)聯(lián)關(guān)系表中。這 些信息都通過計(jì)算公式來獲取。單據(jù)初始化時(shí)自動(dòng)創(chuàng)建對應(yīng)的緩存,計(jì)算公式直接從緩存 中取數(shù),提高響應(yīng)速度。
權(quán)利要求
1.通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法,其特征在于包括以下步驟A、使用數(shù)據(jù)模型在任意單據(jù)間動(dòng)態(tài)地配置出參照關(guān)系;B、使用動(dòng)態(tài)表記錄核銷狀態(tài)和數(shù)據(jù)核銷關(guān)系,定義參照關(guān)系并不影響源單據(jù)和目標(biāo)單 據(jù)上原來的邏輯處理;C、使用智能化自動(dòng)生成技術(shù),自動(dòng)形成直接可用的來源單據(jù)選擇窗口;D、采用動(dòng)態(tài)緩存技術(shù)進(jìn)行單據(jù)選擇窗口和表單上的相關(guān)標(biāo)識(shí)列和數(shù)值列的計(jì)算,提高 響應(yīng)效率。
2.根據(jù)權(quán)利要求1所述的通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法,其特征在于,步驟 A中每一個(gè)單據(jù)都對應(yīng)一個(gè)唯一標(biāo)識(shí)作為邏輯表名,根據(jù)單據(jù)邏輯表名建立單據(jù)的數(shù)據(jù)模 型,通過指定來源單據(jù)和目標(biāo)單據(jù),自動(dòng)加載出其數(shù)據(jù)模型,在此基礎(chǔ)上配置出來源單據(jù)和 目標(biāo)單據(jù)的參照關(guān)系。
3.根據(jù)權(quán)利要求1所述的通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法,其特征在于,步驟B中(1)使用動(dòng)態(tài)表記錄單據(jù)參照中的標(biāo)識(shí)列和核銷關(guān)系,依據(jù)源單據(jù)形成對應(yīng)的狀態(tài)記 錄表,存儲(chǔ)核銷標(biāo)識(shí)和核銷數(shù)值,依據(jù)目標(biāo)單據(jù)生成對應(yīng)的關(guān)聯(lián)關(guān)系表,記錄源單據(jù)和目標(biāo) 單據(jù)的關(guān)系。
4.根據(jù)權(quán)利要求1所述的通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法,其特征在于,步驟C中,(1)根據(jù)設(shè)置的不同,自動(dòng)生成特定的來源單據(jù)選擇窗口;(2)用戶可以對自動(dòng)形成的來源單據(jù)選擇窗口進(jìn)行數(shù)據(jù)源的調(diào)整。
5.根據(jù)權(quán)利要求1所述的通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法,其特征在于,步驟D中,(1)核銷標(biāo)識(shí),核銷數(shù)值,來源單據(jù)等列的值通過計(jì)算公式來獲??;(2)對象形成時(shí)創(chuàng)建緩存,計(jì)算公式直接讀取緩存中的數(shù)據(jù)以迅速展示。
全文摘要
本發(fā)明公開了一種通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法,屬于計(jì)算機(jī)技術(shù)領(lǐng)域。該方法包括以下步驟A、使用數(shù)據(jù)模型在任意單據(jù)間動(dòng)態(tài)地配置出參照關(guān)系;B、使用動(dòng)態(tài)表記錄核銷狀態(tài)和數(shù)據(jù)核銷關(guān)系,定義參照關(guān)系并不影響源單據(jù)和目標(biāo)單據(jù)上原來的邏輯處理;C、使用智能化自動(dòng)生成技術(shù),自動(dòng)形成直接可用的來源單據(jù)選擇窗口;D、采用動(dòng)態(tài)緩存技術(shù)進(jìn)行單據(jù)選擇窗口和表單上的相關(guān)標(biāo)識(shí)列和數(shù)值列的計(jì)算,提高響應(yīng)效率。與現(xiàn)有技術(shù)相比,本發(fā)明的通過動(dòng)態(tài)配置實(shí)現(xiàn)單據(jù)參照功能的方法具有信息量大、易解析、靈活性好、易擴(kuò)展等特點(diǎn),具有很好的推廣應(yīng)用價(jià)值。
文檔編號G06Q10/00GK102063663SQ20101061700
公開日2011年5月18日 申請日期2010年12月31日 優(yōu)先權(quán)日2010年12月31日
發(fā)明者張華 , 楊平波, 王常林 申請人:浪潮集團(tuán)山東通用軟件有限公司