專利名稱::電力系統跨平臺多源多目標拖放的實現方法
技術領域:
:本發明涉及一種電力系統中的數據定義的實現方法,具體講是涉及一種電力系統跨平臺多源多目標拖放的實現方法。屬于電力
技術領域:
。
背景技術:
:電力系統具有廣域分布、參數海量、模型復雜的特點,在電網調度系統中需要對各種設備參數進行定義并操作監控,選擇一個設備或者量測進行數據的定義,在系統生成階段是一個常規的操作,這樣需要預先定義多個公式進行計算,制作各個廠站圖和其他需要査看的圖形進行監控。在海量的數據定義和圖形制作中,如何快速正確選擇相應的設備或參數進行定義是個重要的課題。一般情況下的數據定義中都是通過人工輸入設備參數、關鍵對象來實現對象的關聯,這樣可能會帶來人為的輸入誤差從而導致入庫錯誤,操作也較為復雜。同時,在Windows平臺上的拖放操作已經非常的流行易行,但是在Unix平臺上的拖放還并不常見。在多平臺的情況下實現跨平臺的關聯設置,可能還需要同時維護多套源程序代碼,增加了維護難度。另外,在進行關聯設置時,都是單源單目標進行,操作很麻煩。
發明內容為解決現有技術的不足,本發明的目的在于提供一種電力系統跨平臺多源多目標拖放的實現方法,正確快捷地進行數據的定義和拖放,并可實現跨平臺操作,方便快捷。本發明的設計思路是利用鼠標的拖放來實現數據定義的復制粘貼。選擇合適的拖動源,在鼠標開始拖動時候定義一個完整的拖動對象進行復制,在放下鼠標的同時把拖動對象放置在目標上進行解壓完成粘貼工作。為達到上述目的,本發明是通過以下的技術方案來實現的--種電力系統跨平臺多源多目標拖放的實現方法,其特征在于包括以下步驟4(1)、對象定義對電力系統設備和可操作對象進行定義,將定義的對象存儲在關系表結構中;(2)、檢索工具將存儲在關系表結構中對象形成檢索工具,在檢索工具屮根據索引順序號進行檢索定位,讀取各表中的數據字典及具體詳細的數據內容;(3)、多拖動源將上述檢索工具和已經定義過的圖形對象、公式操作數一起作為拖動源;(4)、多目標放置用鼠標選擇上述拖動源,拖動源確認拖動操作請求,把相應的數據打包、加密;鼠標將上述拖動源拖動到應用程序界面后,將其解密處理,形成圖形繪制屮的對象、公式定義中的操作數或數據錄入系統中的數據項,實現數據的定義;(5)、跨平臺拖放采用基于第三方提供的動態庫來實現,在不同的平臺上動態庫封裝相同的數據接口供程序調用。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的對象定義,包括定義表示唯一對象內容的表號、記錄號、域號。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的設備包括母線、斷路器、刀閘、廠站信息和電壓類型。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的檢索工具提供表篩選、記錄篩選和域篩選功能。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的檢索工具為層次樹結構,通過應用名、表名、記錄名、域名來層層選擇對象。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的形成圖形繪制中的對象是指在作圖工具包中對各廠站接線圖或系統潮流圖連接入庫的過程中,采用拖拽的方式,直接從檢索工具上選擇到具體的對象,然后利用鼠標拖拽到作圖工具包中實現作圖入庫的定義操作。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的形成公式定義中的操作數是指直接利用檢索工具選擇到具體的對象,然后利用鼠標拖拽到公式定義工具中實現公式的定義操作。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的跨平臺拖放,所述的平臺包括IBMAIX、SunSolaris、AlphaTru64、IIPUX、IJnux和Windows操作系統平臺。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于系統編程語言釆用ANSIC/C++,并符合IEEEPOSIX.2標準。前述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于在所述的跨平臺拖放中,源代碼是一份相同的實體,源碼基于動態庫來實現。本發明的有益效果是1、鼠標拖放實現作圖入庫和公式定義等數據定義的復雜操作。一般情況下的數據定義中都是通過人工輸入設備參數、關鍵對象來實現對象的關聯,這樣可能會帶來人為的輸入誤差從而導致入庫錯誤。而從可視的檢索工具中層層選擇到最終唯一的設備對象進行拖拽到目標對象上則減少了人工輸入的誤差,并且更加的方便快捷。2、跨平臺實現拖放操作。在Windows平臺上的拖拽操作已經非常的流行易行,但是在Unix平臺上的拖拽還并不常見。本發明采用相同的源程序代碼來實現跨平臺的拖放,避免了多份源碼的維護困難。3、多數據源多目標的拖放。在本發明中不僅僅限制在提供一個檢索工具,而且對于已經定義好的設備對象都可以作為拖拽源來實現,例如圖形對象、公式對象等。同樣作為目標源可以是圖形元素、公式操作數或者是數據錄入系統中的某個項等。圖1是檢索工具的層次結構圖2是基于Qt動態庫的拖放示意圖3是多源多目標拖放示意圖4是圖形對象到數據錄入系統的拖放示意圖。具體實施例方式以下結合附圖對本發明作具體的介紹。電力系統跨平臺多源多目標拖放的實現方法,包括以下歩驟(1)對象定義定義電力系統中的操作對象,包括設備定義和其他操作對象;本發明的對象存儲在關系表結構中,各對象有表號、記錄號、域號等表示唯一對象的內容。(2)檢索工具將存儲在關系表結構中對象形成檢索工具,檢索工具可以從已經定義好的對象列表中顯示出來供公式定義和作圖功能使用。電力系統中所有可以選擇到的設備對象,例如母線、斷路器、刀閘等各種設備;系統共用的內容,例如廠站信息、電壓類型等也作為檢索對象。在本發明中的檢索工具不是唯一的拖動源,在已經連接到數據庫中的圖形對象也同樣可以作為拖拽源來實現。(3)作圖連庫在作圖工具包中對各廠站接線圖或者系統潮流圖等連接入庫的過程中,可以通過上述的檢索工具來實現。本發明采用了拖拽的方式,可以直接從檢索工具上選擇到具體的對象,然后利用鼠標拖拽到作圖工具包中實現作圖入庫的操作。(4)公式定義在電力系統中需要定義大量的計算公式,在這些復雜的公式定義中選擇正確的操作對象是個關鍵的問題。本發明可以直接利用檢索工具選擇到具體的對象,然后利用鼠標拖拽到公式定義工具中實現公式的定義操作。(5)跨平臺拖放人們已經非常習慣了Windows平臺中的拖放操作方式,但在基于Unix的界面中較難以實現。在本發明中將這一技術引入其中,實現了多平臺的拖放操作,目前支持IBMAIX、SunSolaris、AlphaTru64、HPUX、Linux和Windows等各種操作系統平臺。(6)本發明的實現技術保證了可移植性,系統編程語言采用ANSIC/C++,并符合IEEEPOSIX.2標準。底層圖形庫基于Trolltech公司的Qt動態庫實現。在木發明中,批露了一種包含所有數據定義的檢索工具,該工具從關系表屮讀取各表的數據字典以及具體詳細的數據內容,然后根據索引順序號進行檢索定位,該工具可以搜索定位到實時數據庫中表的某條記錄或者某個域。作為系統的公共工具,主要與圖形界面和實時庫界面以及一些公共服務如公式定義等結合使用。檢索工具提供表篩選、域篩選、記錄篩選的功能。將每個應用的表分為若干類(如SCADA應用下的表分為系統類、設備類、計算類、參數類等)能快速定位到指定的表;將每個域分為若干類(如遙信類、遙測類、其他類等)能快速定位到指定的域。在本發明中,批露了一種利用鼠標拖放方法定義數據的方法。在查詢到所需的記錄或者域之后,利用拖拽的方法,將其拖動到應用程序界面上實現數據的定義。拖動源在確認了一個拖動操作的請求后,把相應的數據打包,以便于拖動。應用程序界面在收到數據包后,將其解開處理。拖放提供了一種傳遞信息的簡單視覺效果機制。由于本發明針對電力系統設備或者參數的定義,所以在拖放的數據包中進行了數據的特殊定義。定義的數據包中是一個QByteArray的二進制數組,通過memcpy函數把需要的表號、記錄號、域號進行打包。在開始拖動的過程屮進行QStoredDrag的存儲打包,實現dragCopy的操作。應用程序界面在接收到dropEvent事件之后,通過encodedData解壓數據包進行相應的處理。在本發明中,披露了一種跨平臺的拖放方法。利用同一套源代碼,在不同的操作系統平臺上實現了相同的拖動操作。本發明中的跨平臺主要是基于第三方提供的Qt動態庫來實現的,在不同的平臺上動態庫Qt封裝了相同的數據接口供程序調用。文獻《基于Qt的EMS圖形系統的研究》(第十屆全國保護和控制學術研討會論文集2005年第494頁)披露了Qt動態庫的優良跨平臺特性。表l是數據結構定義表。對照表l,本發明中利用了關系表作為存儲結構,各對象都可以有唯一的標記來表示。本發明中的關鍵字包括應用號、表號、記錄號和域號。這樣可以唯一確定電力系統的對象描述,利于檢索工具的層次定位。表l、數據結構定義<table>tableseeoriginaldocumentpage8</column></row><table>圖1是檢索工具的層次結構圖,對照圖1,在檢索工具中實現了層次的結構來描述關系表的存儲結構,通過應用選擇、表名選擇、記錄選擇、域名選擇可以最終選擇到唯一的對象。本發明中的檢索工具提供拖拽源,但不限定作為唯一的拖拽源。任何已經定義好的設備對象,只要具備了應用號、記錄號和域號即可作為拖拽源拖動到需要定義的對象中。圖2是基于Qt動態庫的拖放示意圖,對照圖2,在本發明中需要實現跨平臺拖放功能,底層實現采用了Qt圖形庫作為基礎。選擇拖動源DragSource后,鼠標開始startDrag的過程,通過移動dragMove進入到放置目標DropTarget,在目標對象中首先進入dragEnter事件,當放下鼠標時候處理dropEvent事件,至此完成一個拖放的過程。在拖放過程中會對拖放對象DragObject做一個加密和解密的操作。只有符合該算法的對象才能夠接收拖放對象。圖3是多源多目標拖放示意圖,對照圖3,在本發明中的拖動源可以是包含所有數據庫信息的檢索工具,可以是已經定義過的圖形對象,還可以是已經定義的公式操作數。同樣作為放置的目標也可以是圖形文件的中相應對象,或者是公式定義屮的操作數,同樣還可以作為數據庫錄入項中的參數輸入。在拖動源檢索工具中通過應用選擇、表名選擇、記錄選擇和對應域的選擇可以唯一確定選擇對象,通過鼠標拖動放置到公式定義的操作數名稱欄目中即可完成一個復雜的檢索工具到公式定義的拖放操作過程。圖4是圖形對象到數據錄入系統的拖放示意圖,對照圖4,在左邊已經定義過的圖形對象中,選擇到需要拖放的對象利用鼠標放置到右邊的數據錄入系統相應的數據項中即可完成數據的一次輸入過程。本發明按照優選實施例進行了說明,應當理解,但上述實施例不以任何形式限定本發明,凡采用等同替換或等效變換的形式所獲得的技術方案,均落在本發明的保護范圍之內。9權利要求1、電力系統跨平臺多源多目標拖放的實現方法,其特征在于包括以下步驟2、根據權利要求l所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的對象定義,包括定義表示唯一對象內容的表號、記錄號、域號。3、根據權利要求l所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的設備包括母線、斷路器、刀閘、廠站信息和電壓類型。4、根據權利要求l所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的檢索工具提供表篩選、記錄篩選和域篩選功能。5、根據權利要求l所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的檢索工具為層次樹結構,通過應用名、表名、記錄名、域名來層層選擇對象。6、根據權利要求l所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的形成圖形繪制中的對象是指在作圖工具包中對各廠站接線圖或系統潮流圖連接入庫的過程中,采用拖拽的方式,直接從檢索工具十.選擇到具體的對象,然后利用鼠標拖拽到作圖工具包中實現作圖入庫的定義操作。7、根據權利要求l所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的形成公式定義中的操作數是指直接利用檢索工具選擇到具體的對象,然后利用鼠標拖拽到公式定義工具中實現公式的定義操作。8、根據權利要求l所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于所述的跨平臺拖放,所述的平臺包括IBMAIX、SunSolaris、AlphaTru64、HPUX、Linux和Windows操作系統平臺。9、根據權利要求l所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于系統編程語言采用ANSIC/C++,并符合IEEEP0SIX,2標準。10、根據權利要求1所述的電力系統跨平臺多源多目標拖放的實現方法,其特征在于在所述的跨平臺拖放中,源代碼是一份相同的實體,源碼基于動態庫來實現。全文摘要一種電力系統跨平臺多源多目標拖放的實現方法,包括對象定義定義對象并存儲在關系表結構中;檢索工具將對象形成檢索工具;多拖動源將上述檢索工具和已經定義過的圖形對象、公式操作數一起作為拖動源;多目標放置用鼠標選擇上述拖動源,拖動源將數據打包加密拖動到應用程序界面后,將其解密處理,形成需操作的對象;跨平臺拖放在不同的平臺上動態庫封裝相同的數據接口供程序調用。本發明形成可視的檢索工具,并利用動態庫實現跨平臺拖放,可以實現跨平臺的多拖動源和多目標放置,是人們可以正確快捷地進行數據的定義和拖放,并可實現跨平臺操作,方便快捷。文檔編號G06F9/44GK101520729SQ20091002592公開日2009年9月2日申請日期2009年3月13日優先權日2009年3月13日發明者遠任,曹蓉蓉,楊志宏,汪小闖,翟明玉申請人:國電南瑞科技股份有限公司