李成華,周盼盼
(中航工業成都飛機工業(集團)有限責任公司,成都 610092)
CATIA和ACCESS二次開發在提升項目管理效率中的應用研究
李成華,周盼盼
(中航工業成都飛機工業(集團)有限責任公司,成都 610092)
基于CATIA,ACCCESS,Excel多種軟件聯合二次開發工具軟件,涉及項目管理中的CATIA結構樹非幾何信息提取、工藝文件的管理。通過軟件的使用將項目管理過程中關鍵環節串聯為一個有機整體,改善以往項目管理中信息獲取困難和過程監控不力的狀態,優化了工作流程,提高了項目管理效率。
項目管理;CATIA;ACCESS;二次開發;信息提取;超鏈接;數據報表
航空制造業中的零件有其自身的特點,對比其他行業的零件存在材料特殊、結構復雜、熱處理、表面處理類型多、質量控制嚴苛、無損檢測過程多等特點;從批量上講,零件屬于單件小批量生產,零件種類多。因此,航空制造業中的工藝項目管理存在數據量大,管理繁瑣的特點。
項目管理主要涉及兩方面的工作:一是全面把握設計端信息來源;二是有效解決制造端工藝文件管理。工藝技術部門依據設計的零件數模,編制制造大綱,完成零件的生產制造。飛機零件的設計基于CATIA平臺進行,零件相關的材料、熱處理、表面處理、無損檢測等非幾何信息都在存放在數模結構樹中,因此,快速有效的獲取項目零件結構樹信息為項目管理的第一步。
要完成零件制造,除了編制制造大綱之外,還有數控程序、刀具清單等機加配套文件;機加完成后還需協作單位進行熱處理、表面處理、無損檢測等過程;多單位協同工作將產生大量技術狀態協調的交接單、指示單。通常,一個機型項目相關的各種工藝文件總量上萬份。管理好這些工藝文件能夠監控項目的執行情況,減少現場問題的發生,從而提高項目管理效率。因此,工藝文件的有效管理為項目管理的第二步。
針對目前數據管理混亂,項目管理效率不高的現狀,對CATIA數模結構樹信息自動提取、工藝文件的有效管理方面進行研究,基于CATIA、ACCESS、Excel聯合二次開發工具軟件來解決項目管理中的難點問題。
1.1信息輸出方式
目前CATIA數模信息的獲取是通過人工拷貝結構樹上的信息,手動匯總形成項目總信息表。由于零件數量多、工作量大,造成數據維護困難,而且人工操作也容易出錯,可靠性差。為了改善現狀,通過CATIA二次開發提取零件結構樹信息。CATIA結構樹中非幾何信息如圖1所示。

圖1 CATIA結構樹中非幾何信息
有研究針對裝配數模通過循環裝配數模下的零件數模,依次輸出零件的結構樹信息[1~2]。但在實際工程中,零件分工通常按結構特征分工,而不是以裝配關系整塊分工,因此,直接針對單個零件數模提取結構樹信息的方式通用性更強。只需要將待提取信息的零件數模置于相同文件夾下面,以文件夾控制導出數據范圍,靈活性更強。
遍歷文件夾下面CATIA數模的核心偽代碼如下:

1.2程序工作流程
依據項目需求,采用VB對CATIA進行二次開發。軟件執行流程如下:首先,打開一個零件項目,確定輸出信息類別;然后,遍歷項目包內所有的零件名稱存入File數組,接著輸出所有零件中相應類別下的數據;最后,后臺運行Excel生成項目總信息表。流程圖如圖2所示,項目總信息報表如圖5左半部分所示。

圖2 CATIA提取結構樹信息程序流程圖
2.1文件管理問題及解決思路
針對文件管理,很多文件審簽都走PDM系統,PDM系統大而全,但是在具體針對項目文件管理方面還不夠靈活,因此有必要針對實際情況開發部門級應用。
目前,項目文件管理雜亂無章、規范不一,總結起來主要存在兩個問題:第一,單人獨自管理與自己相關的文件,沒有信息共享;第二,工藝文件的名字不規范,文件命名依賴于人的偏好,同一種類型的文件,不同的人命名相差甚遠,外人無法通過文件名明確這個文件的主要內容,阻礙協同工作中的交流。因此,要實現大量工藝文件的有效管理必須解決上述問題。
針對數據共享問題,現采用數據上傳服務器集中存儲,使每一個合法用戶都能通過客戶端訪問數據,方便協同處理問題。針對命名不規范問題,現通過客戶端對上傳文件自動規范性重命名后上傳;上傳文件前會讓用戶選擇與該文件相關的信息,包括機型、圖號、文件類別、附加說明等,利用軟件強制規范文件命名格式。
2.2基于ACCESS平臺開發文件管理程序
1)ACCESS二次開發簡介[3]
ACCCESS是微軟把數據庫引擎(Microsoft JET database engine)的圖形用戶界面和軟件開發工具結合在一起的數據庫管理系統。MS ACCESS以它自己的格式將數據存于ACCESS JET的數據庫引擎里,它可以直接導入或者鏈接數據(這些數據存儲于其他應用程序或數據庫)。
ACCESS除了具有存儲數據功能外,還具有強大的數據處理和開發軟件的能力。基于ACCESS開發軟件速度快,效率高和Excel互導數據方便。ACCESS的內置開發語言為VBA。
2)程序寫流程及功能概述
客戶端主要功能是將工藝文件資料通過軟件自動化規范重命名后上傳服務器,除主要功能外,還具有刪除服務器上舊版本文件,查詢相關零件的所有相關工藝文件和導出機型相關文件總清單的功能。程序流程圖如圖3所示。

圖3 工藝文件管理平臺程序流程圖
程序通過超鏈接實現客戶端記錄與服務器上文件的鏈接,在客戶端查詢零件圖號后,程序后臺的搜索模塊會在服務器上相應數據庫中檢索相關文件,匹配到和零件相關的工藝文件時,獲取該文件的名稱,地址信息,然后在客戶端生成超鏈接。除了直接通過超鏈接訪問文件外,還可以通過點擊記錄中的“下載”,將服務器端的文件下載至本機。程序主界面如圖4所示。

圖4 工藝文件管理平臺主界面
3)關鍵技術
通過對文件的重命名后提交服務器,獲取服務器端文件名和文件地址在前臺生成文件超鏈接。
核心功能偽代碼如下:
Private Sub FileSubmission()
'文件提交函數
Name OldName As NewName[3]
'更改文件名
Filecopy SourceFile,DestinationFile[3]
'將源文件上傳服務器
Dim rst As DAO.Recordset
StrSQL="select*from DataSheet1"
Ser rst=CurrentDb.OpenRecordset(strSQL,dbOpenDy naset)
'給記錄賦值
rst.AddNew'添加新記錄
rst.Fields!Hyperlink="DisplayText#FullAddress#"
'給超鏈接賦值
rst.Update'更新記錄
rst.Close'關閉記錄
Set rst=Nothing'釋放內存
Me.Refresh'刷新窗體
End sub
4)Excel 輸出項目文件報表
鑒于Excel在數據透視和數據處理方面的強大功能[4],通過向Excel中寫入數據,生成項目文件清單報表。
數據導出函數ExportDataToEXCEL核心偽代碼如下:
Private Sub ExportDataToEXCEL()'數據導出函數
Dim xlApp As Application
Dim xlbook As Workbook
Dim xlSheet As Worksheet
'獲取正在運行的excel程序
Set xlApp=GetObject(,"EXCEL.Application")
If xlApp Is Nothing Then
'新建一個excel程序
Set xlApp=CreateObject(,"EXCEL.Application")
End If
Set xlbook=xlApp.Workbooks.Add
Set xlSheet=xlbook.Worksheets(1)
'給EXCEL的"A1"單元格賦值
xlSheet.Cells(1,1)= "Data"
'詳細過程略
【】【】
The practical research of CATIA and ACCESS secondary development in promoting project management efficiency
LI Cheng-hua, ZHOU Pan-pan
TP311.56
A
1009-0134(2016)10-0123-04
2016-07-26
李成華(1989 -),男,重慶人,工程師,碩士研究生,研究方向為機械制造、加工工藝、企業管理信息化、CATIA及Access二次開發等。