電網技改檢修工程預算編制中BCL的應用論文
摘要:近年來市場上出現了很多專業的電力工程造價編制軟件,針對不同的業務需求,如何使得復雜的計算邏輯易于被記錄和維護,如何使業務人員可以直觀驗證數據的正確性,如何解決工程造價計算效率不高等問題。文章通過描述BCL計算規則的原理及技術實現方案,論述了BCL在國網華東分部技改檢修工程預算編制中的應用情況。
關鍵詞:預算編制;技術經濟;BCL;技改檢修
1BCL簡介
BCL全稱為“BoowayComputingLanguage”,它是根據工程造價的特點而設計的、獨立于不同產品、項目,具有開發語言無關性、平臺無關性的一種解析型腳本程序語言及其編譯執行方法。
2BCL實現原理
BCL能夠在滿足復雜工程造價計算需求的同時,有效記錄并還原工程造價計算過程,其實現過程包括以下內容:(1)設計描述具體計算算法規則的代數式及擴展運算表達式結構(EL表達式)。所述EL(ExpressionLanguage)表達式是對計算算法規則的一個完整描述,以${和}作為起始和結束標記。它在沿襲傳統代數表達式運算特點的同時,支持用于包含多種表達式選擇的條件選擇運算和完成具體計算規則的函數運算在內的其它高級運算功能。與傳統代數運算不同,所述EL表達式包含種類多元化的操作數,支持數值、字符串和變量等類型。其中,變量類型操作數是所述EL表達式支持動態數據掛接的典型體現,其值可以為外部對象的引用,也可以為執行階段設定的具體數據值。所述條件選擇表達式以#{和}作為起始和結束標記,其內部可包含多個條件分支和至多一個缺省條件分支,每個分支對應一個EL表達式。整個條件選擇表達式的取值為當前被激活條件分支對應的EL表達式計算結果。所述函數運算定義了具體的計算規則,以滿足工程造價特定計算需求。其語法結構與C語言兼容,并支持BCL的擴展數據類型。除此之外,所述函數的調用還支持把EL表達式作為參數進行輸入,能夠實現指定工程數據范圍與EL表達式的動態綁定,進而減少表達式代碼冗余。如:sum(source,“工程量”,?工程量.數量*工程量.定額費)(2)分析工程造價計算需求,確定除EL表達式以外的其它計算邏輯單元;通過對造價工程數據及計算算法、過程的總結歸納,得出任何工程的工程造價復雜計算算法都可分解為幾種最小的原子計算邏輯單元,主要為:EL表達式、宏表(macrotable)、變量(variable)、參數(parameter)和數據源(datasource)等。其中,所述宏表能完整的表示一個具有遞歸、多字段、多記錄、有匯總關系的計算規則。所述數據源用于描述一個工程的數據及其數據范圍,它是BCL語言與工程數據的粘合劑,實現真實數據的傳遞。所述變量是包含數據源、數據過濾算法以及費用計算算法規則在內的具體費用計算結構。(3)BCL語言的編譯執行裝置,包括:BCL編譯器裝置、BCL腳本解析裝置和BCL執行器裝置。所述BCL編譯器裝置用于對外界輸入的待計算BCL元素進行編譯處理,生成相應BCL對象。其中,所述BCL元素為最小待計算單元,內部包含描述計算算法規則的EL表達式集合。根據BCL元素類型的不同,采取不同策略,分析并獲取相應待計算EL表達式。利用BCL語法分析器,對所述EL表達式進行詞法和語法分析,生成被稱之為BCL語法樹的內存對象,并關聯到相應BCL對象中。與BCL語言體系中的原子計算邏輯單元相對應,BCL元素至少應包含BCL包元素、BCL變量元素、BCL宏表元素、BCL記錄元素、BCL字段元素、BCL參數元素和BCL數據源元素這7種。其中BCL包元素作為其它元素的容器存在,不具備值表達式。而BCL變量元素包含BCL數據源元素對象、過濾表達式和值表達式,通過執行過濾表達式,可從數據來源中篩選形成符合條件的數據范圍,應用于其值表達式的計算過程當中。所述BCL腳本解析裝置包含了BCL腳本文件生成器和腳本解析器,用于實現BCL對象集合與BCL腳本文件之間的相互轉換,能夠有效記錄或還原指定BCL對象,避免對同一計算需求下的重復編譯處理,有效減少工程造價計算時間。所述BCL執行模塊計算生成的BCL對象,根據BCL對象類型的不同,按照不同方式,解釋執行相應BCL語法樹結構,將計算過程數據和計算結果分別保存在語法樹結點和BCL對象當中,進而獲取計算結果數據,完成執行任務。
3BCL在預算編制實例中的'運用
3.1基于BCL的軟件業務算法的配置化系統采用BCL實現軟件計算規則、算法與程序分離,從而實現支持版本管理的電網工程費用計算、便捷維護產品計算業務等特性,同時基于配置化能夠良好支持系統實現不同計算業務的擴展。過去的工程費用計算,是將軟件業務算法編輯在代碼中,形成一個業務算法模塊,一旦業務規則修改,代碼的維護成本會很大。通過開發專用于造價計算的腳本語言BCL和計算引擎,可將軟件的業務算法形成腳本文件,從而將具有業務特性的算法和規則獨立于軟件功能,使軟件功能與業務計算完全脫離耦合,利于業務算法的擴展,提高了軟件模塊的可維護性。3.2基于并行節點的工程費用實時計算以往編制模式是非實時的,工程編制完后,需要生成報表才能預覽費用結果,對用戶編制過程中核對費用造成了極大不便,因此,根據軟件業務特性和費用的組成結構,為了給用戶提供更好的使用體驗,通過應用BCL算法規則可以實現工程數據修改后就立即計算出工程費用的機制,達到所見即所得的的編制效果,同時軟件采用增量計算和保存的技術,提高了工程費用計算的效率,也增強了數據保存的性能。
4結束語
綜上所述,BCL在電網技改檢修工程預算編制中得到了良好的應用,使得電網技改檢修工程造價更加系統化、規范化、高效化。
參考文獻
[1]畢美娜.面向VHDL算法級行為描述的程序語言編譯方法研究[D].哈爾濱工程大學,2008.
[2]李芳,王建華,劉志峰.機械加工描述語言的編譯研究[J].現代制造工程,2005.
[3]黃玉霞,韓其瑜.一種面向問題的描述語言及其解釋程序的自動生成[J].數值計算與計算機應用,1993,14(01):58-70.
【電網技改檢修工程預算編制中BCL的應用論文】相關文章:
電網建設工程統籌檢修的策劃與實施論文02-24
電力工程技術在電網建設中的應用論文01-22
智能電網建設中的電力工程技術的應用論文01-22
電力信息通信在智能電網中的應用分析論文11-16
大數據分析在互聯電網中的應用論文01-24
實際選擇法在電網投資管理中的應用論文12-28
工程施工中的應用論文11-09
公路工程中的應用論文11-11
沉井施工在工程中的應用論文04-10