專利名稱:電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法及其系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電力自動化領(lǐng)域,具體涉及一種電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法及其系統(tǒng)。
背景技術(shù):
隨著電網(wǎng)公司的信息化建設(shè),越來越多的計算機技術(shù)支持系統(tǒng)用于電網(wǎng)的運行管理、分析決策等業(yè)務(wù)的技術(shù)支持。在實際應(yīng)用中,每個系統(tǒng)都專注于電網(wǎng)運行的某一項或幾項業(yè)務(wù),系統(tǒng)之間往往需要進(jìn)行電網(wǎng)模型及運行數(shù)據(jù)的共享,數(shù)據(jù)交互的需求必不可少。由于各系統(tǒng)的建設(shè)階段、軟件供應(yīng)商的設(shè)計開發(fā)原則各異,數(shù)據(jù)結(jié)構(gòu)以及相應(yīng)的存儲、檢索方式不盡相同,另外,隨著各信息系統(tǒng)的擴展和新系統(tǒng)的不斷加入,需要交互的信息和數(shù)據(jù)也在不斷變化。因此數(shù)據(jù)交互的設(shè)計和實施既要適應(yīng)現(xiàn)有的信息交換需求,還得考慮未來的 適應(yīng)能力。為滿足電力系統(tǒng)數(shù)據(jù)模型的高效描述和大量在線數(shù)據(jù)的高效交換,電力系統(tǒng)的數(shù)據(jù)交互廣泛采用數(shù)據(jù)模型描述語言一E語言作為數(shù)據(jù)描述。E語言采用基于文本文件的存貯和交換方式,獨立于數(shù)據(jù)庫和操作系統(tǒng),適合描述電力系統(tǒng)復(fù)雜模型,應(yīng)用于電力系統(tǒng)方式計算用電網(wǎng)設(shè)備模型和參數(shù)的描述、電網(wǎng)運行數(shù)據(jù)交換等領(lǐng)域。E文件的格式請見附件。為規(guī)范數(shù)據(jù)文件的格式,減少因為格式變化導(dǎo)致的數(shù)據(jù)寫出和解析工作量。前一發(fā)明(電力信息數(shù)據(jù)的物理、應(yīng)用、時間三維屬性建模機制)采用物理、應(yīng)用、時間三維屬性對電力信息數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化建模。對于這種數(shù)據(jù)結(jié)構(gòu)而言,定義了數(shù)據(jù)的三維標(biāo)簽即可唯一確定該數(shù)據(jù),設(shè)定數(shù)據(jù)的三維標(biāo)簽屬性,調(diào)用統(tǒng)一的數(shù)據(jù)操作命令即可實現(xiàn)該數(shù)據(jù)的檢索或存儲。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)的不足,本發(fā)明提供一種電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法及其系統(tǒng),本發(fā)明設(shè)計實現(xiàn)了一種配置化的電力信息系統(tǒng)數(shù)據(jù)交互工具,即通過文件周期、格式以及收發(fā)路徑的配置實現(xiàn)E文件的讀取或?qū)懗?,實現(xiàn)電力信息系統(tǒng)中不同業(yè)務(wù)應(yīng)用之間數(shù)據(jù)的靈活交互和共享。本發(fā)明的目的是采用下述技術(shù)方案實現(xiàn)的—種電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法,其改進(jìn)之處在于,所述設(shè)計方法包括下述步驟(I)E文件格式配置;(2)命名映射管理;(3)數(shù)據(jù)讀??;(4)數(shù)據(jù)寫出;(5)數(shù)據(jù)交互任務(wù)調(diào)度;(6)數(shù)據(jù)交互任務(wù)監(jiān)控;
(7)數(shù)據(jù)補采補傳。優(yōu)選的,所述步驟(I)中,所述E文件格式配置完成對E文件的統(tǒng)一注冊和信息配置;對E文件的信息配置包括文件的名稱格式、周期類型、文件中輸入輸出的數(shù)據(jù)塊、數(shù)據(jù)塊中各列數(shù)據(jù)內(nèi)容以及文件收發(fā)的頻率、時間、路徑設(shè)置。較優(yōu)選的,其中文件中輸入輸出的數(shù)據(jù)塊名稱的配置類型為物理標(biāo)簽、應(yīng)用標(biāo)簽、時間戳或固定值;若為物理標(biāo)簽,設(shè)定映射轉(zhuǎn)換的接口系統(tǒng);若為應(yīng)用標(biāo)簽,設(shè)定應(yīng)用標(biāo)簽碼;若為時間戳,設(shè)定時間字符串格式;若為固定值,設(shè)定固定值。 較優(yōu)選的,其中,數(shù)據(jù)塊中各列數(shù)據(jù)內(nèi)容的配置信息為物理標(biāo)簽、應(yīng)用標(biāo)簽、時間戳或固定值;若為物理標(biāo)簽,設(shè)定映射轉(zhuǎn)換的接口系統(tǒng);若為應(yīng)用標(biāo)簽,設(shè)定應(yīng)用標(biāo)簽碼;若為時間戳,設(shè)定時間字符串格式;若為固定值,設(shè)定固定值。優(yōu)選的,所述步驟(2 )中,所述命名映射管理是為實現(xiàn)E文件中數(shù)據(jù)的解析和傳送過程中物理對象的一致,對各電力信息系統(tǒng)之間物理主體的命名規(guī)范進(jìn)行映射管理,確保在通過文件進(jìn)行數(shù)據(jù)交互時根據(jù)文件中的名稱標(biāo)識找到對應(yīng)的物理主體。優(yōu)選的,所述步驟(3)中,所述數(shù)據(jù)讀取是解析E文件進(jìn)行數(shù)據(jù)讀取,包括下述步驟A、查詢E文件注冊記錄,獲取E文件配置信息;B、按照分隔配置信息將E文件分塊,逐塊讀E文件;C、判斷是否到分塊結(jié)束位置,是則讀下一分塊,否則讀下一行記錄。D、循環(huán)讀取E文件數(shù)據(jù)直至E文件結(jié)束,將讀取到的標(biāo)簽數(shù)據(jù)序列入庫;E、E文件中所有數(shù)據(jù)讀取完畢后,復(fù)制該E文件到設(shè)定的備份路徑下以備查,并將讀取路徑下的E文件刪除。較優(yōu)選的,所述步驟B包括下述步驟a、讀塊分隔文字,判斷數(shù)據(jù)塊名稱的配置類型①是固定值,判斷與配置的固定值是否匹配,是則繼續(xù)進(jìn)行一下步驟,否則跳轉(zhuǎn)讀下一分塊;②是物理標(biāo)簽,獲得物理標(biāo)簽編碼;③是應(yīng)用標(biāo)簽,獲得應(yīng)用標(biāo)簽編碼;④是時間戳,獲得當(dāng)前數(shù)據(jù)塊對應(yīng)的時間。b、讀記錄行中的數(shù)據(jù)I、根據(jù)配置信息找到記錄行中的固定值列,判斷固定列的數(shù)據(jù)是否滿足配置,是則繼續(xù)進(jìn)行步驟II,否則跳轉(zhuǎn)讀下一分塊;II、按次序讀其他列,讀配置為物理、應(yīng)用或時間的列①是物理標(biāo)簽,從當(dāng)前列中讀取本行數(shù)據(jù)的物理標(biāo)簽;
②是應(yīng)用標(biāo)簽,從配置信息中獲取本列配置的應(yīng)用標(biāo)簽編碼,再從當(dāng)前列中讀取該應(yīng)用標(biāo)簽對應(yīng)的數(shù)據(jù)值;③是時間戳,獲得本行數(shù)據(jù)的時間;III、當(dāng)讀完所有列后,按照應(yīng)用標(biāo)簽的數(shù)量構(gòu)造標(biāo)簽數(shù)據(jù),分別設(shè)置它們的物理、應(yīng)用標(biāo)簽、時間戳和數(shù)據(jù)值。優(yōu)選的,所述步驟(4)中,所述數(shù)據(jù)寫出包括下述步驟i、查詢E文件注冊記錄,獲取E文件配置信息;ii、根據(jù)文件周期、當(dāng)前時間以及文件寫出時間設(shè)置查詢數(shù)據(jù)庫,得到待寫入數(shù)據(jù)文件的標(biāo)簽數(shù)據(jù)dataList ;根據(jù)文件中數(shù)據(jù)塊的名稱格式對數(shù)據(jù)序列分組,將每組數(shù)據(jù)逐塊與文件;
iii、數(shù)據(jù)塊中各列的數(shù)據(jù)寫完后,判斷分組數(shù)據(jù)是否遍歷結(jié)束,是則寫下一分塊,否則寫下一行記錄;iv、所有分塊的所有記錄寫完后,將E文件傳送至配置信息中設(shè)定的路徑。較優(yōu)選的,所述步驟ii包括下述步驟I)根據(jù)數(shù)據(jù)塊的名稱格式寫塊分隔文字j、數(shù)據(jù)塊名稱設(shè)置為固定值,則分隔文字為前綴-固定值;k、數(shù)據(jù)塊名稱設(shè)置為應(yīng)用標(biāo)簽,則取分組數(shù)據(jù)的各項dataltem的應(yīng)用標(biāo)簽名;m、數(shù)據(jù)塊名稱設(shè)置為物理標(biāo)簽,前綴_tag_phy對應(yīng)的映射名;n、數(shù)據(jù)塊名稱設(shè)置為時間戳,前綴_date_time格式化字符串;2)遍歷分組數(shù)據(jù),根據(jù)配置類型寫列數(shù)據(jù)W、是物理標(biāo)簽,tag_phy對應(yīng)的映射名;X、是應(yīng)用標(biāo)簽,tag_app對應(yīng)的應(yīng)用標(biāo)簽名i ;y、是時間戳,date_time格式化字符串;z、是固定值,配置的固定值。
優(yōu)選的,所述步驟(5)中,負(fù)責(zé)所述數(shù)據(jù)交互任務(wù)調(diào)度的是后臺常駐程序,所述后臺常駐程序負(fù)責(zé)根據(jù)E文件的配置信息定時調(diào)起文件的讀取或?qū)懗鋈蝿?wù),顯示任務(wù)執(zhí)行過程中的輸出信息,并記錄相應(yīng)的日志。較優(yōu)選的,所述步驟(5)中,所述數(shù)據(jù)交互任務(wù)調(diào)度包括E文件讀取任務(wù)調(diào)度和E文件寫出任務(wù)調(diào)度。較優(yōu)選的,所述E文件讀取任務(wù)調(diào)度包括下述步驟一、查詢接口 E文件注冊記錄,獲得需讀取的E文件列表;二、根據(jù)E文件列表中各個文件的讀取路徑,掃描這些路徑下是否有待解析的文件若有則啟動相應(yīng)的讀取流程;在一個讀取任務(wù)啟動后,設(shè)置鎖定標(biāo)志位,等到該文件讀取完成后標(biāo)志位才能被解鎖,防止多個同類文件讀取任務(wù)同時被啟動而造成異常。較優(yōu)選的,所述E文件寫出任務(wù)調(diào)度包括下述步驟查詢接口 E文件注冊記錄,獲得需寫出的E文件列表;根據(jù)E文件列表中各個文件的周期屬性和寫出時間設(shè)置,計算出文件下一次寫出任務(wù)的啟動時間;按照設(shè)定的頻率比較系統(tǒng)時間和文件的下一次任務(wù)啟動時間,若相同則啟動相應(yīng)的寫出邏輯。在一個寫出任務(wù)啟動后,設(shè)置鎖定標(biāo)志位,等到該文件寫出完成后標(biāo)志位才能被解鎖,防止多個同類文件寫出任務(wù)同時被啟動而造成異常。優(yōu)選的,所述數(shù)據(jù)交互狀態(tài)監(jiān)控包括E文件的讀取或?qū)懗鋈蝿?wù)執(zhí)行過程的過程信息;所述過程信息包括文件名稱、文件讀取或?qū)懗龅臅r間、文件讀取或?qū)懗鋈蝿?wù)是否成功完成和文件的處理行數(shù)。優(yōu)選的,所述數(shù)據(jù)補采補傳用于實現(xiàn)E文件解析或?qū)懗鋈蝿?wù)的手工調(diào)度以完成數(shù)據(jù)的交互。本發(fā)明基于另一目的提供的一種電力信息系統(tǒng)可配置數(shù)據(jù)交互工具系統(tǒng),其改進(jìn)之處在于,所述系統(tǒng)包括配置模塊用于完成E文件的周期、收發(fā)路徑和文件格式、待交互數(shù)據(jù)內(nèi)容的設(shè)置;命名映射管理模塊用于實現(xiàn)E文件中數(shù)據(jù)的解析口徑的一致,對不同應(yīng)用、不同系統(tǒng)之間物理主體的命名規(guī)范進(jìn)行映射管理的模塊;數(shù)據(jù)讀取模塊根據(jù)E文件周期、接收路徑和文件格式、數(shù)據(jù)內(nèi)容參數(shù),用于完成E文件數(shù)據(jù)解析入庫的流程設(shè)計;數(shù)據(jù)寫出模塊根據(jù)E文件周期、發(fā)送路徑和文件格式、數(shù)據(jù)內(nèi)容參數(shù),用于完成數(shù)據(jù)查詢和文件生成的流程設(shè)計;數(shù)據(jù)交互任務(wù)調(diào)度模塊根據(jù)E文件的周期屬性和讀取或?qū)懗鰰r間設(shè)置,定時調(diào)起相應(yīng)的E文件讀取或?qū)懗龇?wù);數(shù)據(jù)交互狀態(tài)監(jiān)控模塊用于對E文件的讀取或?qū)懗銮闆r進(jìn)行監(jiān)控,根據(jù)E文件的周期屬性展示指定時間段內(nèi)需讀取或?qū)懗龅腅文件的實際執(zhí)行情況,給出相應(yīng)的日志信息;數(shù)據(jù)補采補傳模塊用于手工讀取或?qū)懗鯡文件。與現(xiàn)有技術(shù)比,本發(fā)明達(dá)到的有益效果是I、本發(fā)明涉及一種可配置的電力信息系統(tǒng)數(shù)據(jù)交互工具,基于電力信息數(shù)據(jù)的特點,根據(jù)物理、應(yīng)用、時間三維標(biāo)簽數(shù)據(jù)的標(biāo)準(zhǔn)化定位機制設(shè)計了 E文件的參數(shù)配置和數(shù)據(jù)的自動讀、寫流程,實現(xiàn)了電力信息系統(tǒng)之間可配置的數(shù)據(jù)交互。2、本發(fā)明突出的特點在于電力信息系統(tǒng)之間數(shù)據(jù)交互的配置化實現(xiàn),當(dāng)數(shù)據(jù)交互需求變化時,僅通過調(diào)整配置信息即可增加或修改需交互的數(shù)據(jù),有效地避免了由于數(shù)據(jù)交互需求變化導(dǎo)致的重復(fù)開發(fā)和調(diào)試工作,顯著提高了電力信息系統(tǒng)中數(shù)據(jù)交互功能的適應(yīng)能力。
圖I是本發(fā)明提供的電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法的流程示意圖;圖2是本發(fā)明提供的配置模塊界面示意圖;圖3是本發(fā)明提供的數(shù)據(jù)讀取流程圖;圖4是本發(fā)明提供的數(shù)據(jù)寫出流程圖;圖5是本發(fā)明提供的數(shù)據(jù)任務(wù)調(diào)度顯示界面圖6是本發(fā)明提供的數(shù)據(jù)交互狀態(tài)監(jiān)視界面圖;圖7是本發(fā)明提供的可配置數(shù)據(jù)交互工具用于電力信息系統(tǒng)數(shù)據(jù)交互的實施方案示意圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明的具體實施方式
作進(jìn)一步的詳細(xì)說明。本發(fā)明在對電力系統(tǒng)運營數(shù)據(jù)進(jìn)行物理、應(yīng)用、時間三維建模基礎(chǔ)上,根據(jù)標(biāo)準(zhǔn)化的數(shù)據(jù)格式設(shè)計E文件參數(shù)配置工具和E文件的自動讀寫邏輯流程,并通過后臺的自動任務(wù)調(diào)度程序?qū)崿F(xiàn)了 E文件的定時讀取或?qū)懗龉δ?,本發(fā)明提供的一種電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具系統(tǒng),包含如下功能模塊(I)配置模塊。用于E文件的周期、收發(fā)路徑和文件格式、待交互數(shù)據(jù)內(nèi)容的設(shè)置;配置模塊界面顯示如圖2所示。 (2)命名映射管理模塊,即為實現(xiàn)E文件中數(shù)據(jù)的解析口徑的一致,對不同應(yīng)用、不同系統(tǒng)之間物理主體的命名規(guī)范進(jìn)行映射管理的模塊;(3)數(shù)據(jù)讀取模塊,即根據(jù)E文件周期、接收路徑和文件格式、數(shù)據(jù)內(nèi)容等參數(shù)進(jìn)行文件數(shù)據(jù)解析入庫的流程設(shè)計;(4)數(shù)據(jù)寫出模塊,即根據(jù)E文件周期、發(fā)送路徑和文件格式、數(shù)據(jù)內(nèi)容等參數(shù)進(jìn)行數(shù)據(jù)查詢和文件生成的流程設(shè)計;(5)數(shù)據(jù)交互任務(wù)調(diào)度模塊,即后臺的常駐程序,根據(jù)E文件的周期屬性和讀取或?qū)懗鰰r間設(shè)置,定時調(diào)起相應(yīng)的E文件讀取或?qū)懗龇?wù);(6)數(shù)據(jù)交互狀態(tài)監(jiān)控模塊,即對各類E文件的讀取或?qū)懗銮闆r進(jìn)行監(jiān)控,根據(jù)E文件的周期屬性展示指定時間段內(nèi)需讀取或?qū)懗龅腅文件的實際執(zhí)行情況,必要時給出相應(yīng)的日志信息。(7)數(shù)據(jù)補采補傳模塊,即手工讀取或?qū)懗鯡文件的功能,根據(jù)用戶選定的時間區(qū)間和文件類型,重新調(diào)起相關(guān)E文件的處理任務(wù)。E文件格式如下所示<統(tǒng)調(diào)機組日發(fā)電量>
@UNIT_ID 0flV_TIME (日期) GRllSS_EHERGV (日發(fā)電畺,MWh)
#1000112012-6-15695.46
#1000122012-6-16978.92
1080132012-6-16233.67
M ■ * M ■m m m< /統(tǒng)調(diào)機組日發(fā)電量>本發(fā)明提供的電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法,其工作流程如圖I所示。包括下述步驟(I) E文件格式配置;E文件格式配置通過配置模塊實現(xiàn)。配置模塊完成對E文件的統(tǒng)一注冊和信息配置。對E文件的信息配置包括文件的名稱格式、周期類型、文件中輸入輸出的數(shù)據(jù)塊、數(shù)據(jù)列(參看附件中的E文件格式)數(shù)據(jù)內(nèi)容以及文件收發(fā)的頻率、時間、路徑設(shè)置等。文件內(nèi)容的配置信息如下
文件名稱格式;文件中數(shù)據(jù)塊名稱格式;數(shù)據(jù)塊名稱的配置類型( 物理/應(yīng)用/時間/固定值/無)若為物理標(biāo)簽,設(shè)定映射轉(zhuǎn)換的接口系統(tǒng);若為應(yīng)用標(biāo)簽,設(shè)定應(yīng)用標(biāo)簽碼;若為時間戳,設(shè)定時間字符串格式;若為固定值,設(shè)定固定值;數(shù)據(jù)塊中各列的配置信息(物理/應(yīng)用/時間/固定值/無)若為物理標(biāo)簽,設(shè)定映射轉(zhuǎn)換的接口系統(tǒng);若為應(yīng)用標(biāo)簽,設(shè)定應(yīng)用標(biāo)簽碼;若為時間戳,設(shè)定時間字符串格式;若為固定值,設(shè)定固定值。(2)命名映射管理;命名映射管理通過命名映射管理模塊實現(xiàn)。各電力信息系統(tǒng)之間由于設(shè)計原則、編碼生成方式的差異,對同一物理設(shè)備的命名各不相同,為實現(xiàn)E文件中數(shù)據(jù)的解析和傳送過程中物理對象的一致,需要對不同系統(tǒng)之間物理主體的命名規(guī)范進(jìn)行映射管理。本模塊實現(xiàn)對接口系統(tǒng)類型的管理和本系統(tǒng)中注冊的各類物理主體在各個接口系統(tǒng)中的映射名稱的維護(hù)。在E文件讀取流程中,將按照文件配置信息中物理主體的映射系統(tǒng)類型、文件中的物理主體名稱反查出該物理主體在本系統(tǒng)中的編碼,然后構(gòu)造本系統(tǒng)中的三維數(shù)據(jù)結(jié)構(gòu)完成數(shù)據(jù)的入庫。在E文件寫出流程中,將按照文件配置信息中物理主體的映射系統(tǒng)類型、本系統(tǒng)中的物理主體編碼查詢出該物理主體在接口系統(tǒng)中的名稱寫入文件。(3)數(shù)據(jù)讀??;數(shù)據(jù)讀取流程設(shè)計通過數(shù)據(jù)讀取模塊實現(xiàn)。數(shù)據(jù)讀取流程如圖3所示。解析E文件進(jìn)行數(shù)據(jù)讀取的流程設(shè)計包括如下步驟A、查詢文件注冊記錄,獲取文件配置信息;B、按照分隔配置信息將文件分塊,逐塊讀文件;a、讀塊分隔文字,去除前綴后,根據(jù)配置信息獲取相應(yīng)的信息,包括①是固定值,判斷與配置的固定值是否匹配,否則繼續(xù)讀下一分塊;②是物理標(biāo)簽,獲得物理標(biāo)簽編碼;③是應(yīng)用標(biāo)簽,獲得應(yīng)用標(biāo)簽編碼;④是時間戳,獲得當(dāng)前數(shù)據(jù)塊對應(yīng)的時間。b、讀記錄行中的固定值列首先判斷定義為固定值的各列數(shù)據(jù)是否滿足配置,是則繼續(xù)進(jìn)行一下步驟,否則跳轉(zhuǎn)讀下一分塊;讀配置為物理/應(yīng)用/時間的列I、是物理標(biāo)簽,從當(dāng)前列中讀取本行數(shù)據(jù)的物理標(biāo)簽;II、是應(yīng)用標(biāo)簽,從配置信息中獲取本列配置的應(yīng)用標(biāo)簽編碼,再從當(dāng)前列中讀取該應(yīng)用標(biāo)簽對應(yīng)的數(shù)據(jù)值;III、是時間戳,獲得本行數(shù)據(jù)的時間;IV、當(dāng)讀完所有列后,按照應(yīng)用標(biāo)簽的數(shù)量構(gòu)造標(biāo)簽數(shù)據(jù),分別設(shè)置它們的物理、應(yīng)用標(biāo)簽、時間戳 和數(shù)據(jù)值。C、判斷是否到分塊結(jié)束位置,是則讀下一分塊,否則讀下一行記錄。D、循環(huán)讀取文件數(shù)據(jù)直至文件結(jié)束,將讀取到的標(biāo)簽數(shù)據(jù)序列入庫。E、文件中所有數(shù)據(jù)讀取完畢后,復(fù)制該文件到設(shè)定的備份路徑下以備查,并將讀取路徑下的文件刪除。(4)數(shù)據(jù)寫出;數(shù)據(jù)寫出通過數(shù)據(jù)寫出模塊實現(xiàn)。數(shù)據(jù)寫出流程如圖4所示.數(shù)據(jù)寫出至E文件的流程設(shè)計包括如下步驟i、查詢文件注冊記錄,獲取文件配置信息。ii、根據(jù)文件周期、當(dāng)前時間以及文件寫出時間設(shè)置查詢數(shù)據(jù)庫,得到待寫入數(shù)據(jù)文件的標(biāo)簽數(shù)據(jù)dataList。根據(jù)文件中數(shù)據(jù)塊的名稱格式對數(shù)據(jù)序列分組,然后將每組數(shù)據(jù)逐塊寫文件。I)根據(jù)數(shù)據(jù)塊的名稱格式寫塊分隔文字,包括j、數(shù)據(jù)塊名稱設(shè)置為固定值,則分隔文字為前綴+固定值;k、數(shù)據(jù)塊名稱設(shè)置為應(yīng)用標(biāo)簽,則取分組數(shù)據(jù)的各項dataltem的應(yīng)用標(biāo)簽名(此時數(shù)據(jù)序列按照應(yīng)用標(biāo)簽分組,因此組內(nèi)的各數(shù)據(jù)項應(yīng)用標(biāo)簽相同);m、數(shù)據(jù)塊名稱設(shè)置為物理標(biāo)簽,前綴+tag_phy對應(yīng)的映射名;n、數(shù)據(jù)塊名稱設(shè)置為時間戳,前綴+date_time格式化字符串。2)遍歷分組數(shù)據(jù),根據(jù)配置內(nèi)容寫列數(shù)據(jù),包括W、是物理標(biāo)簽,tag_phy對應(yīng)的映射名;X、是應(yīng)用標(biāo)簽,tag_app對應(yīng)的應(yīng)用標(biāo)簽名i ;y、是時間戳,date_time格式化字符串;z、是固定值,配置的固定值。iii、數(shù)據(jù)塊中各列的數(shù)據(jù)寫完后,判斷分組數(shù)據(jù)是否遍歷結(jié)束,是則寫下一分塊,否則寫下一行記錄。iv、所有分塊的所有記錄寫完后,將文件傳送至配置信息中設(shè)定的路徑。(5)數(shù)據(jù)交互任務(wù)調(diào)度;數(shù)據(jù)交互任務(wù)調(diào)度通過數(shù)據(jù)交互任務(wù)調(diào)度模塊實現(xiàn)。任務(wù)調(diào)度部署為后臺的常駐程序,它負(fù)責(zé)根據(jù)文件的配置信息定時調(diào)起文件的讀取或?qū)懗鋈蝿?wù),顯示任務(wù)執(zhí)行過程中必要的輸出信息,并記錄相應(yīng)的日志。數(shù)據(jù)交互任務(wù)調(diào)度顯示界面如圖5所示。一、文件讀取任務(wù)調(diào)度查詢接口 E文件注冊記錄,獲得需讀取的E文件列表,根據(jù)其中各個文件的讀取路徑,掃描這些路徑下是否有待解析的文件,若有則啟動相應(yīng)的讀取流程。在一個讀取任務(wù)啟動后,設(shè)置鎖定標(biāo)志位,等到該文件讀取完成后標(biāo)志位才能被解鎖,防止多個同類文件讀取任務(wù)同時被啟動而造成異常。二、文件讀取任務(wù)調(diào)度
查詢接口 E文件注冊記錄,獲得需寫出的E文件列表,根據(jù)其中各個文件的周期屬性和寫出時間設(shè)置,計算出文件下一次寫出任務(wù)的啟動時間。按照設(shè)定的頻率比較系統(tǒng)時間和文件的下一次任務(wù)啟動時間,若相同則啟動相應(yīng)的寫出邏輯。在一個寫出任務(wù)啟動后,設(shè)置鎖定標(biāo)志位,等到該文件寫出完成后標(biāo)志位才能被解鎖,防止多個同類文件寫出任務(wù)同時被啟動而造成異常。(6)數(shù)據(jù)交互任務(wù)監(jiān)控;數(shù)據(jù)交互任務(wù)監(jiān)控通過數(shù)據(jù)交互任務(wù)監(jiān)控模塊實現(xiàn)。數(shù)據(jù)交互狀態(tài)監(jiān)視界面如圖6所示。正常情況下,數(shù)據(jù)交互通過后臺的任務(wù)調(diào)度程序自動掉啟用E文件的讀取或?qū)懗鋈蝿?wù)進(jìn)行,無需人工干預(yù),用戶通過數(shù)據(jù)交互狀態(tài)監(jiān)視來了解E文件的讀取或傳輸情況。狀態(tài)監(jiān)視模塊還負(fù)責(zé)記錄E文件的讀取或?qū)懗鋈蝿?wù)執(zhí)行過程的過程信息,包括文件名稱、文件讀取或?qū)懗龅臅r間、文件讀取或?qū)懗鋈蝿?wù)是否成功完成、文件的處理行數(shù)等,如讀取或?qū)懗鲞^程出現(xiàn)異常,發(fā)生異常時還將記錄異常信息,包括異常出現(xiàn)的行數(shù)、異常出現(xiàn)的原因、異常拋出字符串等。
(7)數(shù)據(jù)補采補傳;數(shù)據(jù)補采補傳通過數(shù)據(jù)補采補傳模塊實現(xiàn)。任務(wù)調(diào)度駐程序?qū)崿F(xiàn)E文件解析或?qū)懗鋈蝿?wù)的調(diào)度執(zhí)行,當(dāng)自動調(diào)度任務(wù)執(zhí)行過程發(fā)生異?;蛴捎谄渌蛐枰募匦绿幚頃r,可采用文件的補采補傳實現(xiàn)E文件解析或?qū)懗鋈蝿?wù)的手工調(diào)度以完成數(shù)據(jù)的交互。文件補采時由于原接收路徑下的文件在首次讀取完成后被刪除,因此補采之前先在文件的備份路徑下將指定時間區(qū)間中所有的文件復(fù)制到接收路徑下,然后再啟動文件讀取任務(wù)。實施例本發(fā)明的可配置數(shù)據(jù)交互工具用于電力信息系統(tǒng)數(shù)據(jù)交互的實施方案如圖7所示。該案例中,可配置的數(shù)據(jù)交互工具部署在安全I(xiàn)II區(qū)的A系統(tǒng)中,通過工具的E文件寫出功能將A系統(tǒng)中的數(shù)據(jù)按照文件的配置信息生成相應(yīng)的數(shù)據(jù)文件,經(jīng)由反向隔離裝置送至安全I(xiàn)I區(qū)的B系統(tǒng);B系統(tǒng)的輸出數(shù)據(jù)在生成E文件后通過正向隔離裝置送至安全I(xiàn)II區(qū),再由可配置的數(shù)據(jù)交互工具的文件解析功能按照E文件的配置信息對文件進(jìn)行解析并將數(shù)據(jù)入庫,實現(xiàn)A、B兩個系統(tǒng)的雙向數(shù)據(jù)交互。本發(fā)明提供的電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法,通過E文件格式和文件中數(shù)據(jù)內(nèi)容的設(shè)置以及定時的文件自動讀取、寫出邏輯設(shè)計實現(xiàn)了電力信息數(shù)據(jù)在不同系統(tǒng)之間的自由交互。最后應(yīng)當(dāng)說明的是以上實施例僅用以說明本發(fā)明的技術(shù)方案而非對其限制,盡管參照上述實施例對本發(fā)明進(jìn)行了詳細(xì)的說明,所屬領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解依然可以對本發(fā)明的具體實施方式
進(jìn)行修改或者等同替換,而未脫離本發(fā)明精神和范圍的任何修改或者等同替換,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述設(shè)計方法包括下述步驟 (1)E文件格式配置; (2)命名映射管理; (3)數(shù)據(jù)讀?。? (4)數(shù)據(jù)寫出; (5)數(shù)據(jù)交互任務(wù)調(diào)度; (6)數(shù)據(jù)交互任務(wù)監(jiān)控; (7)數(shù)據(jù)補采補傳。
2.如權(quán)利要求I所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述步驟(I)中,所述E文件格式配置完成對E文件的統(tǒng)一注冊和信息配置;對E文件的信息配置包括文件的名稱格式、周期類型、文件中輸入輸出的數(shù)據(jù)塊、數(shù)據(jù)塊中各列數(shù)據(jù)內(nèi)容以及文件收發(fā)的頻率、時間、路徑設(shè)置。
3.如權(quán)利要求2所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,其中文件中輸入輸出的數(shù)據(jù)塊名稱的配置類型為物理標(biāo)簽、應(yīng)用標(biāo)簽、時間戳或固定值; 若為物理標(biāo)簽,設(shè)定映射轉(zhuǎn)換的接口系統(tǒng); 若為應(yīng)用標(biāo)簽,設(shè)定應(yīng)用標(biāo)簽碼; 若為時間戳,設(shè)定時間字符串格式; 若為固定值,設(shè)定固定值。
4.如權(quán)利要求2所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,其中,數(shù)據(jù)塊中各列數(shù)據(jù)內(nèi)容的配置信息為物理標(biāo)簽、應(yīng)用標(biāo)簽、時間戳或固定值; 若為物理標(biāo)簽,設(shè)定映射轉(zhuǎn)換的接口系統(tǒng); 若為應(yīng)用標(biāo)簽,設(shè)定應(yīng)用標(biāo)簽碼; 若為時間戳,設(shè)定時間字符串格式; 若為固定值,設(shè)定固定值。
5.如權(quán)利要求I所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述步驟(2)中,所述命名映射管理是為實現(xiàn)E文件中數(shù)據(jù)的解析和傳送過程中物理對象的一致,對各電力信息系統(tǒng)之間物理主體的命名規(guī)范進(jìn)行映射管理,確保在通過文件進(jìn)行數(shù)據(jù)交互時根據(jù)文件中的名稱標(biāo)識找到對應(yīng)的物理主體。
6.如權(quán)利要求I所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述步驟(3)中,所述數(shù)據(jù)讀取是解析E文件進(jìn)行數(shù)據(jù)讀取,包括下述步驟 A、查詢E文件注冊記錄,獲取E文件配置信息; B、按照分隔配置信息將E文件分塊,逐塊讀E文件; C、判斷是否到分塊結(jié)束位置,是則讀下一分塊,否則讀下一行記錄。
D、循環(huán)讀取E文件數(shù)據(jù)直至E文件結(jié)束,將讀取到的標(biāo)簽數(shù)據(jù)序列入庫; E、E文件中所有數(shù)據(jù)讀取完畢后,復(fù)制該E文件到設(shè)定的備份路徑下以備查,并將讀取路徑下的E文件刪除。
7.如權(quán)利要求6所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述步驟B包括下述步驟a、讀塊分隔文字,判斷數(shù)據(jù)塊名稱的配置類型 ①是固定值,判斷與配置的固定值是否匹配,是則繼續(xù)進(jìn)行一下步驟,否則跳轉(zhuǎn)讀下一分塊; ②是物理標(biāo)簽,獲得物理標(biāo)簽編碼; ③是應(yīng)用標(biāo)簽,獲得應(yīng)用標(biāo)簽編碼; ④是時間戳,獲得當(dāng)前數(shù)據(jù)塊對應(yīng)的時間。
b、讀記錄行中的數(shù)據(jù) I、根據(jù)配置信息找到記錄行中的固定值列,判斷固定列的數(shù)據(jù)是否滿足配置,是則繼續(xù)進(jìn)行步驟II,否則跳轉(zhuǎn)讀下一分塊; II、按次序讀其他列,讀配置為物理、應(yīng)用或時間的列 ①是物理標(biāo)簽,從當(dāng)前列中讀取本行數(shù)據(jù)的物理標(biāo)簽; ②是應(yīng)用標(biāo)簽,從配置信息中獲取本列配置的應(yīng)用標(biāo)簽編碼,再從當(dāng)前列中讀取該應(yīng)用標(biāo)簽對應(yīng)的數(shù)據(jù)值; ③是時間戳,獲得本行數(shù)據(jù)的時間; III、當(dāng)讀完所有列后,按照應(yīng)用標(biāo)簽的數(shù)量構(gòu)造標(biāo)簽數(shù)據(jù),分別設(shè)置它們的物理、應(yīng)用標(biāo)簽、時間戳和數(shù)據(jù)值。
8.如權(quán)利要求I所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述步驟(4)中,所述數(shù)據(jù)寫出包括下述步驟 i、查詢E文件注冊記錄,獲取E文件配置信息; ii、根據(jù)文件周期、當(dāng)前時間以及文件寫出時間設(shè)置查詢數(shù)據(jù)庫,得到待寫入數(shù)據(jù)文件的標(biāo)簽數(shù)據(jù)dataList ;根據(jù)文件中數(shù)據(jù)塊的名稱格式對數(shù)據(jù)序列分組,將每組數(shù)據(jù)逐塊寫文件; iii、數(shù)據(jù)塊中各列的數(shù)據(jù)寫完后,判斷分組數(shù)據(jù)是否遍歷結(jié)束,是則寫下一分塊,否則寫下一行記錄; iv、所有分塊的所有記錄寫完后,將E文件傳送至配置信息中設(shè)定的路徑。
9.如權(quán)利要求8所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述步驟ii包括下述步驟 1)根據(jù)數(shù)據(jù)塊的名稱格式寫塊分隔文字 j、數(shù)據(jù)塊名稱設(shè)置為固定值,則分隔文字為前綴-固定值; k、數(shù)據(jù)塊名稱設(shè)置為應(yīng)用標(biāo)簽,則取分組數(shù)據(jù)的各項dataltem的應(yīng)用標(biāo)簽名; m、數(shù)據(jù)塊名稱設(shè)置為物理標(biāo)簽,前綴_tag_phy對應(yīng)的映射名; η、數(shù)據(jù)塊名稱設(shè)置為時間戳,前綴-date_time格式化字符串; 2)遍歷分組數(shù)據(jù),根據(jù)配置類型寫列數(shù)據(jù) W、是物理標(biāo)簽,tag_phy對應(yīng)的映射名; X、是應(yīng)用標(biāo)簽,tag_app對應(yīng)的應(yīng)用標(biāo)簽名i ; y、是時間戳,date_time格式化字符串; ζ、是固定值,配置的固定值。
10.如權(quán)利要求I所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述步驟(5)中,負(fù)責(zé)所述數(shù)據(jù)交互任務(wù)調(diào)度的是后臺常駐程序,所述后臺常駐程序負(fù)責(zé)根據(jù)E文件的配置信息定時調(diào)起文件的讀取或?qū)懗鋈蝿?wù),顯示任務(wù)執(zhí)行過程中的輸出信息,并記錄相應(yīng)的日志。
11.如權(quán)利要求10所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述步驟(5)中,所述數(shù)據(jù)交互任務(wù)調(diào)度包括E文件讀取任務(wù)調(diào)度和E文件寫出任務(wù)調(diào)度。
12.如權(quán)利要求11所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述E文件讀取任務(wù)調(diào)度包括下述步驟 一、查詢接口E文件注冊記錄,獲得需讀取的E文件列表; 二、根據(jù)E文件列表中各個文件的讀取路徑,掃描這些路徑下是否有待解析的文件若有則啟動相應(yīng)的讀取流程;在一個讀取任務(wù)啟動后,設(shè)置鎖定標(biāo)志位,等到該文件讀取完成后標(biāo)志位才能被解鎖,防止多個同類文件讀取任務(wù)同時被啟動而造成異常。
13.如權(quán)利要求11所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述E文件寫出任務(wù)調(diào)度包括下述步驟 查詢接口 E文件注冊記錄,獲得需寫出的E文件列表; 根據(jù)E文件列表中各個文件的周期屬性和寫出時間設(shè)置,計算出文件下一次寫出任務(wù)的啟動時間; 按照設(shè)定的頻率比較系統(tǒng)時間和文件的下一次任務(wù)啟動時間,若相同則啟動相應(yīng)的寫出邏輯。在一個寫出任務(wù)啟動后,設(shè)置鎖定標(biāo)志位,等到該文件寫出完成后標(biāo)志位才能被解鎖,防止多個同類文件寫出任務(wù)同時被啟動而造成異常。
14.如權(quán)利要求I所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述數(shù)據(jù)交互狀態(tài)監(jiān)控包括E文件的讀取或?qū)懗鋈蝿?wù)執(zhí)行過程的過程信息;所述過程信息包括文件名稱、文件讀取或?qū)懗龅臅r間、文件讀取或?qū)懗鋈蝿?wù)是否成功完成和文件的處理行數(shù)。
15.如權(quán)利要求I所述的可配置數(shù)據(jù)交互工具的設(shè)計方法,其特征在于,所述數(shù)據(jù)補采補傳用于實現(xiàn)E文件解析或?qū)懗鋈蝿?wù)的手工調(diào)度以完成數(shù)據(jù)的交互。
16.一種電力信息系統(tǒng)可配置數(shù)據(jù)交互工具系統(tǒng),其特征在于,所述系統(tǒng)包括 配置模塊用于完成E文件的周期、收發(fā)路徑和文件格式、待交互數(shù)據(jù)內(nèi)容的設(shè)置; 命名映射管理模塊用于實現(xiàn)E文件中數(shù)據(jù)的解析口徑的一致,對不同應(yīng)用、不同系統(tǒng)之間物理主體的命名規(guī)范進(jìn)行映射管理的模塊; 數(shù)據(jù)讀取模塊根據(jù)E文件周期、接收路徑和文件格式、數(shù)據(jù)內(nèi)容參數(shù),用于完成E文件數(shù)據(jù)解析入庫的流程設(shè)計; 數(shù)據(jù)寫出模塊根據(jù)E文件周期、發(fā)送路徑和文件格式、數(shù)據(jù)內(nèi)容參數(shù),用于完成數(shù)據(jù)查詢和文件生成的流程設(shè)計; 數(shù)據(jù)交互任務(wù)調(diào)度模塊根據(jù)E文件的周期屬性和讀取或?qū)懗鰰r間設(shè)置,定時調(diào)起相應(yīng)的E文件讀取或?qū)懗龇?wù); 數(shù)據(jù)交互狀態(tài)監(jiān)控模塊用于對E文件的讀取或?qū)懗銮闆r進(jìn)行監(jiān)控,根據(jù)E文件的周期屬性展示指定時間段內(nèi)需讀取或?qū)懗龅腅文件的實際執(zhí)行情況,給出相應(yīng)的日志信息; 數(shù)據(jù)補采補傳模塊用于手工讀取或?qū)懗鯡文件。
全文摘要
本發(fā)明涉及一種電力信息系統(tǒng)中可配置數(shù)據(jù)交互工具的設(shè)計方法,該設(shè)計方法包括下述步驟(1)E文件格式配置;(2)命名映射管理;(3)數(shù)據(jù)讀取;(4)數(shù)據(jù)寫出;(5)數(shù)據(jù)交互任務(wù)調(diào)度;(6)數(shù)據(jù)交互任務(wù)監(jiān)控;(7)數(shù)據(jù)補采補傳。本發(fā)明設(shè)計實現(xiàn)了一種配置化的電力信息系統(tǒng)數(shù)據(jù)交互工具,即通過文件周期、格式以及收發(fā)路徑的配置實現(xiàn)E文件的讀取或?qū)懗?,實現(xiàn)電力信息系統(tǒng)中不同業(yè)務(wù)應(yīng)用之間數(shù)據(jù)的靈活交互和共享。
文檔編號G06F17/30GK102799555SQ20121025807
公開日2012年11月28日 申請日期2012年7月24日 優(yōu)先權(quán)日2012年7月24日
發(fā)明者王高琴, 徐駿, 邵平 申請人:中國電力科學(xué)研究院, 國家電網(wǎng)公司