丁博 趙衛華 張嵐
摘 要:本文主要針對基于國網標準化設計的兩套系統間進行數據遷移過程中遇到的難點問題進行研究分析,并提出可行的解決辦法,為其他需要進行相關工作的單位提供理論參考。
關鍵詞:營銷信息化;數據遷移;理論參考
中圖分類號:TP319 文獻標識碼:A
1 數據結構差異
國網公司SG186工程雖然明確了營銷業務應用的統一數據模型,但在實際的開發方面,由于各開發廠商的平臺不同,導致兩套系統分別增加、修改了部分數據模型。尤其是在數據遷移時,需對存在差異的數據結構進行轉換處理,否則將會出現歷史數據丟失、在途業務無法繼承等問題。
2 數據含義差異
不同系統雖然都嚴格遵循國網標設進行開發,但由于開發人員理解的差異性,因此會造成在字段信息完全一致的情況下,其真實數據含義仍然存在差異。此類問題隱藏于數據處理過程中,情況復雜,不易察覺,易在系統更替中造成業務差錯,尤其是電費差錯的產生,對營銷業務和客戶服務造成及其嚴重的影響。下面,我們將針對兩套系統更替時發現的問題進行具體分析:
2.1實收數據記賬年月差異
2.1.1現象描述
兩套系統通過前臺、后臺統計月實收電費信息數據不一致。
2.1.2問題分析
兩套系統實收數據記賬年月含義不一致,影響數據統計的準確性。
原系統中收費記錄表(A_PAY_FLOW)中收費年月字段(CHARGE_YM)存儲的是記賬年月,記賬年月(ACCT_YM)未使用;實收電費信息表(A_RCVED_FLOW)中的實收年月(RCVED_YM)存儲的是記賬年月,記賬年月字段未使用,收費日期(RCVED_DATE)存儲為到賬日期。
由于以上兩個核心表的部分字段含義不相同,導致在數據遷移時需對A_PAY_FLOW(收費記錄)、A_RCVED_FLOW(實收電費信息)、A_RCVED_PL_FLOW(實收代征電費)、A_PREPAY_FLOW(預收電費信息)中的部分字段進行處理。
2.1.3解決方案
(1)將原系統中A_PAY_FLOW.CHARGE_YM字段更新到新系統對應的A_PAY_FLOW.ACCT_YM;
(2)截取A_PAY_FLOW.CHARGE_DATE字段的年月信息,更新到A_PAY_FLOW.CHARGE_YM字段;
(3)截取A_PAY_FLOW.CHARGE_DATE的年月信息,更新到A_RCVED_FLOW.RCVED_YM字段;
(4)截取A_PAY_FLOW.CHARGE_DATE到年月日信息,更新到A_RCVED_FLOW.RCVED_DATE字段;
(5)將A_RCVED_FLOW.RCVED_YM 年月信息更新到A_RCVED_PL_FLOW.RCVED_YM、A_PREPAY_FLOW.PREPAY_YM字段。
2.2分次結算數據存儲差異
2.2.1現象描述:兩套系統通過前臺、后臺統計月電量電費信息數據不一致。
2.2.2問題分析:兩套系統處理分次結算用戶電量電費的邏輯不一致,導致數據存儲差異。原系統處理分次結算用戶的電量電費時,第N-1次電量電費會生成應收數據,在查詢該戶當月最終的電量電費時以第N次(最后一次結算)電量電費為準,第N次電費電費也會生成的應收記錄,應收記錄為“第N次電量電費-(∑1~(n-1)應收電費)”;新系統分次結算用戶電量電費計算N-1次只計算N-1的抄見電量和電度電費,第N次(最后一次)計算第N次抄見電量、當月總變損、總線損、電度電費、總基本費、總力調,應收電量電費統計只統計第N-1+第N次(最后一次)電量電費數據。
2.2.3解決方案:將原系統分次接用戶的第N次(最后一次)電量電費數據減去(∑1~(n-1)電量電費)。共涉及ARC_E_CONS_PRC_AMT(用戶電價電費)、ARC_E_KWH_AMT(電度電費)、ARC_E_PF_AMT(功率因數調整電費)、ARC_E_PL_AMT(代征電費)、ARC_E_BASE_AMT(基本電費)。
3基礎檔案引起電費差異
由于數據結構、數據含義等差異,兩套系統間易出現基礎檔案不同的現象,在電費計算中,部分數據來自于基礎檔案,因此極易造成嚴重的問題。
3.1轉供關系問題
3.1.1現象描述:計算存在轉供關系用戶電費時出錯。
3.1.2問題分析:原系統計算轉供關系僅靠計費關系判斷,未正確設置用電客戶的轉供標志,新系統依靠用電客戶信息中的轉供標志進行判斷。
3.1.3解決方案:計量點計費關系遷移時要遵循以下原則:若該戶有轉供關系,且有關系的計量點狀態不為拆除,則該戶設置為被轉供戶;若該戶沒有轉供關系,則視為該戶為無轉供戶;查找有轉供關系的關聯用戶,且該關聯計量點狀態不為拆除的,將該用戶設置為轉供戶。
3.2計量點級數問題
3.2.1現象描述:計算電費時出現異常,無法計算。
3.2.2問題分析:原系統電費計算時未使用計量點級數信息,因此計量點級數不準確,而新系統嚴格校驗計量點級數信息,導致無法進行數據準備。
3.2.3解決方案:進行計量點信息遷移時遵循以下原則:若計量點沒有計費關系時,則認定該計量點為1級計量點;若計量點有計費關系(關系為并列總表、相加、相減、合算功率因數)、且無其他關系,則視為1級計量點;查找與1級計量點有計費關系、且相關計量點不是拆除狀態、關系為主分關系或轉供關系的,則將查找到的計量點等級設置為關聯計量點等級+1(2級);查找與2級計量點有計費關系、且相關計量點不是拆除狀態、關系為主分關系、轉供關系的,則將查找到的計量點等級設置為關聯計量點等級+1(3級);查找與3級計量點有計費關系、且相關計量點不是拆除狀態、關系為主分關系或轉供關系的,則將查找到的計量點等級設置為關聯計量點等級+1(4級);若計量點不滿足上述所有條件,則將該計量點視為1級計量點。
3.3線損設置問題
3.3.1現象描述:部分用戶線損計算錯誤。
3.3.2問題分析:原系統根據每個計量點上的線損計算方式分別單獨計算線損,然后再根據計量點分攤方式扣減。新系統先計算主計量的總線損,然后根據子計量點的線損分攤方式進行分攤。
3.3.3解決方案:進行數據遷移時遵循以下原則:將主計量點線損計算方式保留,將子計量點線損計算方式設置為“不計算”;所有計量點線損分攤方式保留。
3.4變更記錄問題
3.4.1現象描述:部分用戶電費計算時出現大量的示數翻轉、電量加倍、變更電量重復計算的現象。
3.4.2問題分析:兩套系統在處理用戶變更數據的算法上存在差異。原系統在處理C_BF_CONSPRC_TACTIC(變更前用戶定價策略)、C_BF_METER_READ(變更前電能表示數)、C_TRAN_CHG(變更變壓器記錄)、C_BF_BILL_RELA(變更前計費關系)、C_BF_BILL_PARA(變更前計量點計費參數)、C_BF_CONSPRC(變更前用戶電價)等變更信息時,判斷改變更記錄是否已使用不僅根據CALC_ID(電費計算標識)字段進行判斷,還根據其他內在邏輯進行判斷(造成CALC_ID字段不準確);而新系統僅根據CALC_ID(電費計算標識)字段進行判斷,從而導致變更記錄是否已使用混亂,引起大量存在變更記錄的用戶電量電費計算錯誤。
3.4.1解決方案:刪除每個用戶倒數第二次電費計算年月之前的所有歷史的變更記錄信息。然后對剩余的變更記錄進行逐條處理。由于變更記錄雙方實現方式差異巨大,會引起大面積的電量電費計算錯誤,建議今后數據遷移不在遷移變更記錄。
結語
在兩套符合國網標準化設計的系統間進行數據遷移時,可能會遇到各種各樣的問題,這需要提前進行多次的電費試算與差異比對。本文主要對其中幾個難點問題進行研究分析,成功摸索出一套在國網標準化設計體系下不同廠商營銷業務應用系統間數據遷移的方法,提出了可行性解決方案,總結了大量的經驗教訓,旨在為后續有相關業務操作的單位提供實踐及理論參考。
參考文獻
[1]米爾頓,李芳.深入淺出數據分析[M].北京:電子工業出版社, 2012.
[2]宋宇,鄧成華.企業運營管理系統升級策略:策略與方法實戰案例[M]. 北京:中國時代經濟出版社,2013.