顏立坤,馮會方
(1.河南省特種設(shè)備安全檢測研究院安陽分院;2.安陽市人民醫(yī)院,河南 安陽 455000)
AutoCAD/ERP 集成是近年來,制造業(yè)信息化領(lǐng)域提出的一個新概念,是指在AutoCAD 與ERP(Enterprise Resource Planning,企業(yè)資源計劃)之間建立一個接口,使得AutoCAD 圖紙中的相關(guān)信息(圖形信息、文本信息)能夠快速傳遞到ERP 系統(tǒng)中,減少人工手動操作的環(huán)節(jié),實(shí)現(xiàn)數(shù)據(jù)傳輸自動化,提高系統(tǒng)整體的運(yùn)行效率。針對AutoCAD/ERP 集成的一些關(guān)鍵技術(shù)與問題,很多學(xué)者已經(jīng)做了大量的研究工作。但是,對于ERP 與AutoCAD 之間的數(shù)據(jù)交互問題、數(shù)據(jù)提取后如何導(dǎo)入ERP 等都沒有深入研究。針對集成技術(shù)中存在的一些問題,本文以面向AutoCAD/ERP 集成的標(biāo)題欄信息處理技術(shù)為研究對象,解決標(biāo)題欄信息的讀寫與傳輸問題,實(shí)現(xiàn)標(biāo)題欄信息在AutoCAD 與ERP 之間的集成共享。
面向AutoCAD/ERP 集成的標(biāo)題欄信息處理技術(shù)主要包括兩個方面:(1)在AutoCAD 中,對標(biāo)題欄相關(guān)數(shù)據(jù)進(jìn)行識別與提取,然后,采用一定的技術(shù)方法將之傳遞給ERP 系統(tǒng);(2)利用ERP 系統(tǒng)中的數(shù)據(jù)處理等功能模塊,將信息數(shù)據(jù)寫入AutoCAD 標(biāo)題欄中。本文運(yùn)用VB 為編程語言,通過ActiveX Automation 技術(shù),控制AutoCAD 應(yīng)用對象來完成各種自定義功能的開發(fā)。總體技術(shù)原理如圖1 所示。
圖1 技術(shù)原理圖
在標(biāo)題欄中,需要提取的信息主要包括單位名稱、圖樣名稱、圖樣代號、材料標(biāo)記、重量、比例、設(shè)計人、制圖人、制圖時間、審核人、審核時間等。這些信息在AutoCAD 圖紙中,都是以文本字符串的形式存在的,并且根據(jù)國家標(biāo)準(zhǔn)的規(guī)定,它們在標(biāo)題欄中都處于固定的單元格位置。因此,只需按照標(biāo)準(zhǔn)格式的尺寸計算出各單元格的位置坐標(biāo),再將標(biāo)題欄中所有的文本字符串進(jìn)行位置判定,即可找到各單元格所對應(yīng)的文本內(nèi)容。具體方法如下:(1)在圖紙中將標(biāo)題欄右下角點(diǎn)作為基點(diǎn) ),(AAyxA 。(2)根據(jù)標(biāo)題欄規(guī)定尺寸,計算各單元格的位置坐標(biāo)。(3)遍歷AutoCAD 應(yīng)用對象中的所有文本字符串,將標(biāo)題欄中的文本識別出來并存入數(shù)組T。(4)遍歷數(shù)組T 中的所有文本,與各單元格位置坐標(biāo)逐一匹配判定,即可找出各單元格所對應(yīng)的文本字符串。(5)對識別出來的文本進(jìn)行內(nèi)容提取并輸出。
將圖樣名稱、圖樣代號等信息從標(biāo)題欄中提取出來之后,要傳遞給ERP 系統(tǒng)。與ERP 系統(tǒng)的數(shù)據(jù)集成方法主要有XML 文件、數(shù)據(jù)庫存儲、生成Word/Excel文件、發(fā)布Web Service 等。
(1)XML 文件。
XML(可擴(kuò)展標(biāo)記語言)是一種標(biāo)記型語言,其最大優(yōu)點(diǎn)是允許用戶對標(biāo)記進(jìn)行自定義,而且結(jié)構(gòu)簡單,易于讀寫。本文對存儲標(biāo)題欄信息的XML 文件標(biāo)記進(jìn)行了定義,具體格式如下:
<?xml version=”1.0” encoding=”utf-8”?>
<BTLInfomation>
<DrawingName>圖樣名稱</DrawingName>
<DrawingCode>圖樣代號</DrawingCode>
<DepartName>單位名稱</DepartName>
<DesignerName>設(shè)計人</DesignerName>
…… ……
</BTLInfomation>
在VB 中調(diào)用XmlDocument 類的相關(guān)屬性與方法,即可訪問XML 文件的標(biāo)記內(nèi)容,并完成相關(guān)讀寫操作。當(dāng)標(biāo)題欄信息提取完成后,將自動生成XML 格式文件, ERP 系統(tǒng)可以方便快速地從中讀取相應(yīng)數(shù)據(jù),完成數(shù)據(jù)傳遞。
(2)數(shù)據(jù)庫存儲。
ERP 軟件屬于大型企業(yè)信息化系統(tǒng),其數(shù)據(jù)庫也大多采用大型數(shù)據(jù)庫軟件,如SQL Server、Oracle 等。ADO 是VB 中最常用的數(shù)據(jù)庫連接技術(shù)。當(dāng)標(biāo)題欄信息提取完成后,運(yùn)用VB 中的ADO 組件技術(shù),可以連接ERP 數(shù)據(jù)源,并將標(biāo)題欄數(shù)據(jù)直接存入ERP 數(shù)據(jù)庫中。
圖號編碼是企業(yè)產(chǎn)品設(shè)計、生產(chǎn)組織、工藝準(zhǔn)備、經(jīng)營管理的基礎(chǔ)信息代碼和依據(jù)。目前,大多企業(yè)填寫標(biāo)題欄時,由設(shè)計人員對照編碼手冊來逐一查找并編制圖號,該過程煩瑣費(fèi)時且容易出錯。因此,本文提出設(shè)計一個圖號編碼生成器,采用人機(jī)交互方式來輔助設(shè)計人員編制圖號,操作快捷方便,能夠大大提高編制效率和準(zhǔn)確性。
為了優(yōu)化標(biāo)題欄信息填寫方式,減少冗余環(huán)節(jié),本文提出將“人工填寫信息”與“信息提取導(dǎo)入”這兩個步驟進(jìn)行集成的思路,運(yùn)用VB 設(shè)計出一個標(biāo)題欄填寫工具軟件,設(shè)計人員在該軟件中輸入標(biāo)題欄信息后,這些數(shù)據(jù)便能夠自動地被同時填入AutoCAD 標(biāo)題欄和ERP 系統(tǒng)數(shù)據(jù)庫中。該技術(shù)原理及步驟如下:(1)在標(biāo)題欄填寫工具軟件中,填寫相應(yīng)內(nèi)容與數(shù)據(jù);調(diào)用圖號編碼生成器,生成圖樣代號;(2)在AutoCAD 圖紙中,選定并獲取標(biāo)題欄右下角基點(diǎn)坐標(biāo);(3)根據(jù)標(biāo)題欄尺寸,各單元格位置坐標(biāo);(4)根據(jù)文本與對應(yīng)單元格的所屬關(guān)系及對齊方式要求,計算出各個文本的插入點(diǎn)坐標(biāo);(5)根據(jù)國家標(biāo)準(zhǔn),設(shè)置各文本的字體、大小、顏色等,完成各個文本在對應(yīng)單元格的插入;(6)VB 調(diào)用ADO 組件,連接ERP 數(shù)據(jù)庫,將各文本內(nèi)容存儲到數(shù)據(jù)表對應(yīng)字段中。
基于上述技術(shù)原理分析,以河南省某機(jī)械制造廠ERP 系統(tǒng)為應(yīng)用對象,開發(fā)了基于VB 的標(biāo)題欄信息處理工具軟件。該廠的設(shè)計部門采用AutoCAD 2012 進(jìn)行產(chǎn)品設(shè)計與圖形繪制,ERP 系統(tǒng)的后臺數(shù)據(jù)庫采用SQLServer 2008 搭建。
在ERP 系統(tǒng)中將標(biāo)題欄信息提取和自動填寫軟件加載并運(yùn)行,根據(jù)提示,啟動AutoCAD 并打開相應(yīng)圖紙,選擇信息提取或信息填寫模塊,分別進(jìn)入各自的處理程序。
針對AutoCAD/ERP 集成應(yīng)用的需求,研究了標(biāo)題欄信息綜合處理方法與技術(shù)。以標(biāo)題欄信息識別提取與自動填寫為兩大內(nèi)容,運(yùn)用VB 開發(fā)了面向AutoCAD/ERP 集成的圖紙標(biāo)題欄信息處理工具軟件。該軟件能夠?qū)utoCAD 圖紙標(biāo)題欄中的信息導(dǎo)入ERP中,也能夠?qū)?biāo)題欄數(shù)據(jù)自動同時填入AutoCAD 和ERP 中,使ERP 系統(tǒng)更加完善。