高度なカスタマイズ > ビジネスロジックのカスタマイズ > Windchill で標準を使用したデータ交換 > STEP と PLM のエクスポート/インポート
  
STEP と PLM のエクスポート/インポート
エクスポート
インポートエクスポートのフレームワークによって wtCollection のエクスポートがサポートされています。wtCollection を jar にエクスポートするには次の API を使用します。
IXBExpImpStatus status = IXBSvrHelper.service.doExport(parameters,true/*Server Export*/);
ここで、
parameters
ObjectExportParameters を指します。
ブールフラグはメソッドサーバーのスタブ内で実行が行われることを示します。
IXBExpImpStatus オブジェクトにはエクスポート操作の結果が格納されます。
エクスポートの実行に必要な主なエクスポートパラメータと API を次に示します。
パラメータ
説明
setClientFileName
出力 jar が作成される絶対ファイルパス。クライアントファイル名が存在していてはいけません。これはクライアントが出力 jar の保管先と見なすプレースホルダーです。ファイルパスが指定されていない場合、情報はランダムなテンポラリの場所にエクスポートされます。エクスポート用のこのパラメータを設定することをお勧めします。
setCollection
エクスポートする永続可能オブジェクトが含まれている wtCollection。インポート/エクスポートハンドラが存在する、エクスポートでサポートされる永続可能オブジェクト。既成でサポートされているオブジェクトのリストは、使用されるフォーマットタイプによって異なる場合があります。詳細については、関連する規格のドキュメントを参照してください。
setFormatType
ExportImportFormatType 列挙を使用してエクスポートのフォーマットを定義します。サポートされるフォーマットタイプは次のとおりです。
PLM_FORMAT - PLMS メッセージフォーマットでエクスポートします
STEP_FORMAT - STEP フォーマットでエクスポートします
WNC_FORMAT - Windchill フォーマットでエクスポートします。Windchill フォーマットは、オブジェクトオーナーによって提供される標準 DTD 定義に基づいた XML を指します。これがデフォルトのフォーマットタイプです。
setIxFormatType
IXFormatType を使用して、プロトコル、実装メソッド、フォーマットのタイプとバージョンなどの情報を定義します。これは STEP フォーマットベースのエクスポートで使用します。
IXFormatType オブジェクトは必ず次のメソッドを使用して作成する必要があります。
IXFormatTypeHelper.getIXFormatType
次の情報を設定します。
setProtocol - IXFormatProtocolType - エクスポートが実行されるプロトコル。
setImplementationMethod – IXFormatImplementationMethodType - エクスポートの実装メソッド (XML、Part 21、Part 28 など)。
wtCollection のエクスポートを実行するサンプルコード
次に示すサンプルコードでは、AP214 プロトコルと Part 21 実装メソッドを使用して STEP フォーマットで wtCollection オブジェクトをエクスポートしています。
ObjectExportParameters exportParameters = new ObjectExportParameters();
exportParameters.setCollection(wtCollection);
IXFormatType formatType = IXFormatTypeHelper.getIXFormatType(null, ExportImportFormatType.STEP_FORMAT);
formatType.setProtocol(IXFormatProtocolType.AP214);
formatType.setImplementationMethod(IXFormatImplementationMethodType.PART_21)
exportParameters.setIXFormatType(formatType);
String clientFile = “D:\temp\step.jar” – Absolute file path
exportParameters.setClientFileName(clientFile);
IXBExpImpStatus status = IXBSvrHelper.service.doExport(exportParameters, true);
Vector messages = status.getMessages();
System.out.println("Export messages:");
for (Object object : messages) {
System.out.println(object);
}
int count = status.getObjectCount();
System.out.println("No. of objects exported "+count);
boolean outcome = status.getOutcome();
System.out.println("Outcome of the export "+outcome);
String failureMessage = status.getFailureMessage();
System.out.println("Failure message "+failureMessage);
IXBExpImpStatus オブジェクトにはエクスポートまたはインポート操作の応答が格納されます。このオブジェクトの次の API を使用して情報を取得します。
パラメータ
説明
getMessages
エクスポートのステータスメッセージを提供するメッセージのベクトル。これは UI エクスポート操作中にポーリングされるメッセージとほぼ同じです。
getObjectCount
エクスポートまたはインポートされたオブジェクトの数。
getOutcome
操作の結果 (成功または失敗)。成功した場合はこの値は True になり、失敗した場合は False になります。
getFailureMessage
エクスポートまたはインポート中の例外などの、失敗情報。
インポート
指定されたコンテナへの jar のインポートは次のサーバー側 API を使用して行われます。
IXBExpImpStatus expImpStatus
= IXBSvrHelper.service.doImport(objectimportparameters,true);
ここで、objectImportParameters は、インポートの実行に必要なすべての情報が格納されている ObjectImportParameter オブジェクトを指します。
インポートの実行に必要な主なインポートパラメータと API を次に示します。
パラメータ
説明
setContainer
インポートが実行されるコンテナ。
setDataFile
IXBStreamer はインポートされるファイルを表します。
setIxFormatType
IXFormatType。詳細については、このトピックの「エクスポート」のセクションを参照してください。これは STEP ベースのインポートで使用する必要があります。これはファイルのエクスポートを実行中に使用されたパラメータと同じでなければなりません。
setRepository
IxbSTEPRepository オブジェクトは STEP ファイルインポートの入力です。これはインポートに必要なファイルやフォーマットタイプなどの情報をカプセル化します。
STEP フォーマットのインポートを実行するサンプルコード
次に示すサンプルコードでは、AP214 プロトコルと Part 21 実装メソッドでエクスポートされた STEP フォーマットファイルの ObjectImportParameters を使用してインポートを実行しています。
ObjectImportParameters objectimportparameters = new
ObjectImportParameters();
IxbSTEPRepository repository = new IxbSTEPRepository(file);//file to import
objectimportparameters.setContainer(wtCoontainerRef);
IXFormatType formatType = IXFormatTypeHelper.getIXFormatType(null, ExportImportFormatType.STEP_FORMAT);
formatType.setProtocol(IXFormatProtocolType.AP214);
formatType.setImplementationMethod(IXFormatImplementationMethodType.PART_21)
ImportContextData importcontextdata = (ImportContextData)
objectimportparameters.getContextData();
importcontextdata.setEnableTuning(false);//Tuning is not supported for STEP formats.
repository.setIXFormatType(formatType);
objectimportparameters.setRepository(repository);
PLM フォーマットのエクスポートとインポートを実行するサンプルコード
PLM フォーマットのエクスポートを行うサンプルコードを以下に示します。これは STEP フォーマットと同じですが、以下が異なります。
exportParameters.setFormatType(ExportImportFormatType.PLM_FORMAT);
PLM フォーマットのインポートを行うサンプルコードを以下に示します。これは STEP フォーマットと同じですが、以下が異なります。
* 
リポジトリの代わりにストリーマーオブジェクトを介してファイルを考慮します。
IXBSvrStreamer ixbstreamer = new IXBSvrStreamer(file);
ixbstreamer.setAttrib(IXBStreamer.SAVED_AS_FILE, file);
objectimportparameters.setDataFile(ixbstreamer);
サポートされる API の詳細
クラス
API
目的
ObjectExportParameters
ObjectImportParameters
setDetailedLog
エクスポート/インポート操作の詳細情報を抽出します。この情報はメモリ内のステータスオブジェクトに取り込まれます。大量のデータをエクスポートまたはインポートする場合、これは使用しないでください。
ObjectExportParameters
ObjectImportParameters
setValidation
エクスポート/インポート中の DTD 検証を回避します。これは開発の使用例で必要です。本番用のセットアップでは、この API を false で展開しないでください。
ObjectImportParameters
setDataFile
WNC_FORMAT または PLM_FORMAT ファイルのインポートに使用するストリーマーファイル。IXBSvrStreamer オブジェクトを使用して、インポートするファイル情報をカプセル化します。
ObjectImportParameters
setUseExtendedMapping
メタデータの AP242 プロトコルマッピング用に拡張されたマッピングをサポートします。詳細については、メタデータマッピングの設定を参照してください。