• <input id="zdukh"></input>
  • <b id="zdukh"><bdo id="zdukh"></bdo></b>
      <b id="zdukh"><bdo id="zdukh"></bdo></b>
    1. <i id="zdukh"><bdo id="zdukh"></bdo></i>

      <wbr id="zdukh"><table id="zdukh"></table></wbr>

      1. <input id="zdukh"></input>
        <wbr id="zdukh"><ins id="zdukh"></ins></wbr>
        <sub id="zdukh"></sub>
        公務員期刊網 論文中心 正文

        談海洋石油工程項目材料信息提取

        前言:想要寫出一篇引人入勝的文章?我們特意為您整理了談海洋石油工程項目材料信息提取范文,希望能給你帶來靈感和參考,敬請閱讀。

        談海洋石油工程項目材料信息提取

        摘要:建造事業部的海洋石油工程項目,加工設計配管專業使用SPOOLGEN軟件繪制管線ISO圖,SPOOLGEN軟件可生成ISO圖和一系列REPORT文件,REPORT文件提供了圖紙材料、焊點、延米、表面積等信息。使用傳統方法需要將材料手動錄入圖紙材料表,由于材料信息分布在不同類型的REPORT文件中,統計材料不僅工作量大、步驟繁瑣、耗費時間,也容易出錯。本案例采用CSharp編程實現了圖紙材料信息的提取。

        關鍵詞:CSharp;C#;SPOOLGEN;REPORT;報表;材料;提取

        1引言

        建造事業部的海洋石油工程項目中,加工設計中心配管專業SPOOLGEN軟件生成的REPORT文件數量多、信息多。圖紙材料表包含五十多列內容,一個項目圖紙的數據量動輒幾千張甚至上萬張,使用人工統計材料已經占用越來越多的時間,急需通過其他手段批量處理這些數據。SPOOLGEN軟件生成的REPORT文件為文本文件,主要有以下幾類文件:(1)*ASSEMBLY.TXT文件,包含安裝信息,建造事業部圖紙材料表不包含此類信息,本案例只對數據提取屬性,不做后期處理;(2)*Cut.CSV文件,包含管段信息,本案例只對數據提取屬性;(3)*Material.MTC文件,包含材料的尺寸、規格等信息,需要將數據整理后導入圖紙材料表;(4)*Spool.log文件,包含單管的延米、表面積等信息,需要將延米和表面積導入圖紙材料表;(5)*Support.TXT文件,包含管支架信息,本案例只對數據提取屬性;(6)*Welds.LIS文件,包含焊點信息,需要將焊點信息導入圖紙材料表。SPOOGEN生成的REPORT文件以及文件中的數據結構是由風格包決定的,建造事業部已經對國內海洋石油工程項目進行了標準化,編寫程序可以用于所有使用標準化風格包的國內項目。綜上所述,本案例中的程序需要將*Material.MTC、*Spool.log、*Welds.LIS文件的數據處理后導入圖紙材料表中。本案例采用CSharp編程需要實現以下幾點:(1)將REPORT文件數據提取屬性后導入EXCEL中;(2)將*Material.MTC、*Spool.log、*Welds.LIS文件的數據處理后導入圖紙材料表中。(3)將錯誤信息展現并導入EXCEL中。

        2程序流程

        手動處理圖紙材料表,主要需要以下步驟:(1)將REPORT文件逐個打開,按照不同類型的文件,分別復制到不同的EXCEL表格中.(2)按照SPOOLGEN風格包的格式,提取材料屬性(使用EXCEL提供的數據———分列功能).(3)按照屬性的對照關系,將*Material.MTC文件的內容,逐列復制到圖紙材料表中。(4)將*Spool.log文件中的單管延米、面積按照管線號、單管號、尺寸填入圖紙材料表。(5)計算*Welds.LIS文件中的不同管線、單管、尺寸、類型的焊點數量,填入圖紙材料表。本案例用CSharp編程遵循這種業務流程,設計的程序的基本流程參照圖1。

        3程序核心功能的實現

        本案例中程序先讀取不同類型的文件,再對數據提取屬性,對數據進行處理后,分別寫入EXCEL中。

        3.1數據讀取和屬性提取

        SPOOLGEN軟件REPORT文件都屬于文本文件,其數據的讀取,使用FileReadAllLines方法,如下所示,listFile為包含同一類型文件的集合:REPORT文件數據讀取完成后,需要對每一行數據進行分割,提取出數據的各種屬性,數據提取依據SPOOLGEN風格包,見圖2。REPORT文件數據的每個屬性都是固定長度的字段,不足部分為空格。SPOOLGEN軟件風格包中確定了每個屬性的起始位置和字段長度。每個屬性只需要提取固定位置和長度的字段就可以,在程序中使用Substring方法,簡略代碼如下所示,其中intList為存儲SPOOLGEN風格包中每個屬性起始起始位置的集合。

        3.2圖紙材料表的生成

        圖紙材料表中的數據主要來源于*Material.MTC文件,材料屬性位置不同,需要通過對照關系從*Material.MTC映射到圖紙材料表中,創建一個兩者關系的字典來實現。代碼如下所示,其中arrMat為存儲*Material.MTC文件的一個二維數組,dicMap為圖紙材料表和*Material.MTC文件中材料屬性位置的字典。

        3.3焊點信息

        為圖紙材料表添加焊點信息,需要先將*Welds.LIS文件中的管線號、單管號、尺寸相同的各種類型焊點匯總,再將焊點輸入圖紙材料表的合適位置。焊點類型主要包括預制對焊、現場對焊、插焊、管鞋預制焊、管鞋現場焊。判斷焊接類型根據WeldNo和WeldType屬性來判斷。在本案例中,WeldNo帶“FW”前綴的為現場焊;不帶“FW”,且WeldType為“BW”的為預制焊;WeldType為“BW+T”的為現場預制焊,歸屬到現場焊中。

        3.4單管延米、面積

        單管的延米和面積信息在*Spool.log文件中,需要將對應管線號、單管號、尺寸的延米和面積添加到圖紙材料表中。其中,“Length”列為單管長度“Acreage_Sqm”列為單管的表面積。需要注意,由于SPOOLGEN的IDF文件可能會存在錯誤,*Welds.LIS文件和*Spool.log文件中,會存在尺寸丟失、尺寸錯誤的現象,在DO系統中地漏和管線之間的焊點經常出現這一問題。這時候,焊點和延米的信息無法按照固有規則導入圖紙材料表中,需要程序能捕捉的這些錯誤,并提醒作圖人員根據圖紙上的信息核對并修改圖紙材料表。

        3.5信息的輸出

        本案例中,圖紙材料表需要輸出到EXCEL文件中。在程序中添加引用,選擇MicrosoftOfficeExcel應用程序中的Microsoft.Office.Interop.Excel.dll文件,在程序引用命名空間部分,添加:“usingMicrosoft.Office.Interop.Excel;”。這樣Csharp編寫的程序就能讀寫EXCEL文件。使用Microsoft.Office.Interop.Excel.dll這個COM組件,可以將數組直接寫入表格中,在數據量大的時候,相比逐個單元格賦值,能獲得更快的寫入速度。其代碼如下所示,其中arr為存儲圖紙材料表的一個二維數組。

        4結語

        本案例程序的開發,實現了對SPOOLGEN軟件REPORT文件數據的讀取和圖紙材料表的生成。手工處理一張圖的材料需要10~20min,使用軟件處理一批圖紙(通常幾十張圖紙的REPORT文件一起處理)1~2min就能完成。從軟件完成至今,大約為建造事業部加工設計中心處理了50000多張圖紙,累計節省8000人工時以上。而海洋石油工程項目中,配管專業圖紙數量多的特性也讓軟件有較為廣闊的前景;建造事業部加工設計中心對SPOOLGEN風格包的標準化也為軟件的推廣創造了有利的條件。

        作者:豐興盛 蔣小華 黃太安 王可民 史其麒 單位:海洋石油工程股份有限公司建造事業部加工設計中心

        无码人妻一二三区久久免费_亚洲一区二区国产?变态?另类_国产精品一区免视频播放_日韩乱码人妻无码中文视频
      2. <input id="zdukh"></input>
      3. <b id="zdukh"><bdo id="zdukh"></bdo></b>
          <b id="zdukh"><bdo id="zdukh"></bdo></b>
        1. <i id="zdukh"><bdo id="zdukh"></bdo></i>

          <wbr id="zdukh"><table id="zdukh"></table></wbr>

          1. <input id="zdukh"></input>
            <wbr id="zdukh"><ins id="zdukh"></ins></wbr>
            <sub id="zdukh"></sub>
            理论片久久网站 | 一级加勒比视频在线观看 | 真实国产乱子伦对白视频不卡 | 热久久国产欧美一区二区精品 | 中文字幕图片欧美亚洲 | 午夜福利91社区久久久久 |