




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Teamcenter(UA)中實現(xiàn)歷史數(shù)據(jù)導入發(fā)表時間:2009-12-31 特約通訊員: 郭宇 來源:e-works關鍵字:Teamcenter Item 二次開發(fā) 歷史數(shù)據(jù)導入 PDM本文闡述了在Teamcenter(UA)上實現(xiàn)的一個比較通用的歷史數(shù)據(jù)導入工具的實現(xiàn)方法。通過Java Eclipse和POI技術實現(xiàn)了對歷史數(shù)據(jù)的分批導入。 PDM(Product Data Management)最重要的功能之一是實現(xiàn)企業(yè)業(yè)務流程的電子化,為了實現(xiàn)這個目標,我們必須保證各種
2、數(shù)據(jù)能夠存儲到PDM系統(tǒng)并且能很好得共享。其中包括了文檔、設計資料(二維三維圖紙)的存儲和共享。同時我們還需要實現(xiàn)企業(yè)業(yè)務流程的電子化乃至核心研發(fā)流程優(yōu)化再造,以規(guī)范企業(yè)的研發(fā)流程,幫助企業(yè)提高核心競爭力。 Teamcenter(UA)有良好的架構和開發(fā)接口,我們可以通過客戶化為企業(yè)量身定做適合企業(yè)自身的業(yè)務工作流,滿足客戶的特殊需要。在PDM實施過程中系統(tǒng)上線前,企業(yè)歷史數(shù)據(jù)必須有步驟分批導入到一個全新的PDM系統(tǒng)以支持日常業(yè)務流程。本文闡述了在Teamcenter(UA)上實現(xiàn)的一個比較通用的歷史數(shù)據(jù)導入工具的實現(xiàn)方法。通過Java Eclipse和PO
3、I技術實現(xiàn)了對歷史數(shù)據(jù)的分批導入。一、實現(xiàn)原理 Teamcenter(UA)中的基本數(shù)據(jù)結構是Item結構: 圖1. Item結構 Item是系統(tǒng)最基本的業(yè)務對象,Item Revision是版本對象,用來管理各個版本的數(shù)據(jù)。其中屬性表保存了版本的詳細屬性,包括了客戶化屬性;數(shù)據(jù)集(用DS縮寫)封裝了物理文件。Item對象還可以通過各種關系關聯(lián)其他的Item對象。 在實施過程中,我們通常會幫助企業(yè)整理一部分有價值的歷史數(shù)據(jù)作為PDM系統(tǒng)上線時的基礎和參考,比如標準件庫,有代表性
4、的機種等等。一般情況下,我們會把整理數(shù)據(jù)整理成Excel格式。所以要求歷史數(shù)據(jù)導入工具需要能夠分析Excel文件,并且在Teamcenter(UA)系統(tǒng)中創(chuàng)建上(圖1)中的數(shù)據(jù)結構。對于最常用的數(shù)據(jù)導入要求,我把它分為三個主要的功能模塊進行設計:· Item對象:逐個導入Item對象結構,包括Item、Item Revision、數(shù)據(jù)集以及他們的關聯(lián)關系圖2. 導入Item程序框圖· BOM對象:在導入Item對象結構的基礎上再創(chuàng)建Bom結構,表達零部件Bom關系;圖3. 導入Bom程序框圖· Relation對象:導入若干Item對象之間的關系圖4.
5、 導入關系程序框圖 對于上述三種業(yè)務邏輯,可以把程序劃分為“Excel讀取”“數(shù)據(jù)創(chuàng)建”“驅動引擎”“導入日志”等模塊進行設計:圖5. 模塊劃分二、關鍵技術1. 通用性設計 面對各個不同的類,如何把各種具有不同屬性的類導入到系統(tǒng)是導入工具設計的首要問題。為了解決這個問題,導入工具必須能讀取具有可變列的Excel表格。下面是導入程序應有的一些重要邏輯:· 每個屬性都有標示符,表示它屬于(圖1)中哪個類的屬性,是Item的還是DS的?· 當讀取屬性名稱列,遇到空白列時,標記這是列結尾。· 當讀取到
6、行號為空的行時,標記這是最后一行數(shù)據(jù)· 提供多種可選選項,配置導入后的一些后續(xù)動作。如:若同名DS存在是否覆蓋,若對象存在是否覆蓋?· 標記Bom關系上的屬性,例如:單位、數(shù)量等等2. POI讀寫Excel技術· 導入必要的包 import org.apache.poi.hssf.usermodel.*;· 定義Workbook對象: public HSSFWorkbook wb = null;· 打開Excel工作簿
7、0; public boolean open(File in) FileInputStream filein = null; try filein = new FileInputStream(in); catc
8、h (FileNotFoundException e) e.printStackTrace(); return false; try wb = new HSSFWorkbook(filein); filein.close(); catch (IOExcept
9、ion e) e.printStackTrace(); return false; return true; · 讀取單元格 讀入字符串使用語句: cellval = wb.getSheetAt(isheet).getRow(iline).getCell(short)iro
10、w).getStringCellValue(); 讀入數(shù)字使用語句: celldval = wb.getSheetAt(isheet).getRow(iline).getCell(short)irow).getNumericCellValue();· 寫入單元格(按格式寫入) 寫入字符串: wb.getSheetAt(isheet).getRow(iline).getCell(short)irow).getStringCellVa
11、lue(字符串); 寫入數(shù)字: wb.getSheetAt(isheet).getRow(iline).getCell(short)irow).setNumericCellValue(數(shù)字);· 保存Excel工作簿 只需要保存新建workbook時輸入的FileInputStream就能保存文件: filein.close();3. 基于Eclipse Plugins的兩層Richclient二次開發(fā)
12、160; Teamcenter(UA)兩層Richclient是架構在Eclipse平臺上的應用系統(tǒng)。各部件是按照Eclipse Plugins插件方式嵌入到整個系統(tǒng)的。我們所要開發(fā)的歷史數(shù)據(jù)導入工具也作為一個插件被加載和運行的。· 準備好Eclipse開發(fā)環(huán)境· Eclipse的版本要求是3.2以上,推薦使用3.3 Jre版本要求在1.5.2.06以上 在Eclipse中新建一個插
13、件工程并導入必要的Teamcenter開發(fā)包(一些Jar文件) 在Eclipse中新建一個Plug-in Project圖6. 創(chuàng)建插件項目對話框 配置目標平臺,指向Teamcenter(UA)安裝目錄的portal文件夾圖7. 配置Eclipse plug-in目標平臺對話框· 在工具欄添加按鈕 修改plugin.xml文件,添加按鈕圖8. 加入工具欄菜單按鈕· 按鈕命令啟動歷史數(shù)據(jù)導入對話框 對于典型的二
14、次開發(fā),一個命令按鈕需要包括以下層次的類調用:命令按鈕動作位于CustomToolAction類(動作類)中,按鈕按下,觸發(fā)CustomToolCommand類(命令類),然后會啟動一個對話框(有些情況下不需要對話框),完成對話框UI的交互后,可能觸發(fā)一個后臺的動作,由CustomToolOperation類負責執(zhí)行。圖9. 對話框類的啟動· 用Java抽象類實現(xiàn)“驅動引擎”模塊中三種不同的業(yè)務類型 驅動引擎有很多相似的功能,零部件結構是在Item導入完成后才導入到系統(tǒng)的,所以,ManagerBom繼承在ManagerItem之下。Ab
15、stractManager定義了三個抽象方法幫助分析數(shù)據(jù): public abstract boolean validateContent();對該行數(shù)據(jù)內容進行驗證 public abstract void initOptions();讀取導入選項 public abstract void getLine();讀取單行數(shù)據(jù)并格式化 AbstractManager還有一個Run()方法發(fā)起整個導入循環(huán)操作。圖10. 導入引擎抽象設計三、應用實例1. 基本應用 導入數(shù)據(jù)舉例:圖11. 導入數(shù)據(jù)格式· 導入工具界面:圖12. 導入工具界面· 導入效果舉例:圖13. 導入效果2. 壓力測試 本工具已經(jīng)通過了一定的壓力測試,在某國企重型機械單位,曾經(jīng)成功批量導入過最
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 航空航天復合材料 課件知識點1 聚合物基復合材料概論
- 山東醫(yī)專入學考試試題及答案
- 腫瘤防治與精準醫(yī)學前沿進展
- 自我意識心理健康教育
- 秩序隊員法律法規(guī)培訓
- 呼吸內科門診病歷
- 中班藝術活動《冬天里的活動》
- 園區(qū)招商培訓計劃
- 2025年中國女性生物纖維素面膜行業(yè)市場全景分析及前景機遇研判報告
- 大班健康教案:冬季護膚品使用指南
- 幼兒生活常規(guī)教育的現(xiàn)狀研究
- 完整版-第八版內科冠心病課件
- 戴爾電腦培訓課件
- 光伏電站逆變器檢修規(guī)程
- 醫(yī)生護士家長父母進課堂助教-兒童醫(yī)學小常識PPT
- 2023春國開幼兒園科學教育專題形考任務1-4試題及答案
- 丹東港大東港區(qū)糧食、#13、#14泊位升級改造工程環(huán)境影響報告
- 生產(chǎn)計劃排產(chǎn)表-自動排產(chǎn)
- 基于PLC的臺車呼叫控制設計
- JJF 1334-2012混凝土裂縫寬度及深度測量儀校準規(guī)范
- GB/T 18711-2002選煤用磁鐵礦粉試驗方法
評論
0/150
提交評論