高度なカスタマイズ > サービスおよびインフラストラクチャのカスタマイズ > インポートとエクスポートのフレームワーク > ObjectSet アプリケーションによるオブジェクト構造のナビゲーション > > エクスポート/インポートアプリケーションの例: > エクスポートアプリケーション
  
エクスポートアプリケーション
現在の Windchill エクスポート OOTB GUI および StandardIXBService は、エクスポートアプリケーションです。
OOTB Windchill エクスポート GUI は、IXBHelper を通じて StandardIXBService (エクスポートアプリケーション (サーバー)) のエクスポート処理を呼び出すエクスポートアプリケーション (クライアント) です。
ObjectExportParameters exportParam = new ObjectExportParameters ();
exportParam.setActionName(actorName);
exportParam.setClientFileName(jarFileName);
exportParam.setContainer(container);
exportParam.setDetailedLog(detailedLog);
exportParam.setGuiId(reqGUIid);
exportParam.setPolicyFile(policyFile);
exportParam.setPreviewOnly(isPreview);
exportParam.setRuleFile(ruleF);
exportParam.setValidation(false);
exportParam.setGenerators(generators);
exportParam.setFilters(filters);
exportParam.setLocale(RB.getLocale());
exportParam.setJarInJarFlag(jarInJar);
exportParam.getContextData().setIXApplicationContext(appContext);
try{
String formatType = WTProperties.getAppletProperties().
getProperty("wt.ixb.export.formatType");
if(formatType != null){
exportParam.setFormatType(ExportImportFormatType.
toExportImportFormatType(formatType));
}
}catch(Exception e){
}
IXBExpImpStatus status = IXBHelper.service.doExport ( exportParam);
IXBHelperwt.ixb.clientAccess のクラスです。StandardIXBService クラスのメソッド doExport(…) を呼び出してエクスポート処理を実行します。
IXBExpImpStatus は、エクスポート/インポート処理に関する情報を含む wt.ixb.clientsAccess のクラスであり、サーバーとクライアント間でエクスポート/インポートステータスを渡すために使用されます。
generatorIds - 前述の定義を参照してください。
generatorParams は、エクスポートされるトップレベルオブジェクトのオブジェクト ID の配列です。現在のエクスポート GUI で NavigatorSearchDialog を使用してこれらのオブジェクトを選択します。選択が終了すると、このダイアログは、オブジェクト ID としてナビゲータ ID、ジェネレータ ID、およびシードオブジェクトを持つ IXBSelectedNavInfo のリストを返します。オブジェクト obj が指定されると、IXBHelper.service.getObjectId(obj) を使用してオブジェクト ID を取得できます。
filterIds - 前述の定義を参照してください。
filterParams は、フィルタのタイプに基づいて、エクスポート処理から除外またはエクスポート処理に含めるオブジェクトを設定するオブジェクト属性の配列です。
ruleFile は、エクスポート処理の規則ファイルです。このファイルは Exporter に提供されてエクスポート処理のチューナーを作成します。
guiId は、エクスポート処理を呼び出す GUI の ID です。GUIid の作成方法の例については、wt.clients.ixb.util.ExpImpServerRequest クラスの recordGuiIdInContext() メソッドを参照してください。
detailLog は、ステータスメッセージの詳細が必要かどうかを示します。
stDtd は、使用するエクスポート/インポートハンドラのバージョンを指定します。これは、下位互換性をサポートするために使用します。stDtd が Null または空 ("") の場合は、現在の Windchill に基づいて STRING_DTD が計算されます。
IXBHelper.service.doExport(…) メソッドが呼び出されると、StandardIXBService のメソッド doExportImpl(…) が呼び出されます。
メソッドの説明:
一般的なエクスポートハンドラである ExportHandler ハンドラを作成します。これは StandardIXBService の内部クラスです。
以下を呼び出して、エクスポートされるオブジェクトのリストを取得します。

ObjectSetHelper.computeObjectSetForGivenGeneratorsAndFilters (
generatorIds,
generatorParams,
filterIds,
filterParams);
エクスポートを実行するクラス Exporter のインスタンスを作成します。
Exporter は、isPreview (true/false) に応じて、このドキュメントの Exporter クラスのセクションで説明した Exporter クラスのメソッドを呼び出して、プレビューまたは実際のエクスポートを実行します。
ExportHandler ハンドラのクリーンアップメソッドを呼び出します。