エンタープライズ管理 > Windchill のエクスポートとインポート > PTC Windchill PLM Connector - Creo Packages Administrator's and User's Guide > Creo Packages > インストールおよび設定 > サーバーのインストールおよび設定 > 追加属性のインポートおよびエクスポートのカスタマイズ
  
追加属性のインポートおよびエクスポートのカスタマイズ
デフォルトでは、Creo Packages は CAD ドキュメントのメタデータ属性 (ファイル名、ライフサイクル状態、場所、バージョン情報など) をインポートおよびエクスポートします。Creo Packages を設定して、追加の Windchill 属性をインポートおよびエクスポートすることもできます。詳細については、追加属性のエクスポートおよびインポートを参照してください。
追加属性のインポートおよびエクスポートのカスタマイズ
Creo Packages に用意されているサーバー側の委任を使用して、追加の Windchill 属性をエクスポートおよびインポートできます。カスタマイズプロセスは次のような手順になります。
1. インタフェース WPCPDMObjectAttributeHandler を実装する Java クラスを作成します。インタフェースの定義は次のようになっています。
/**
* WPCPDMObjectAttributeHandler.java
* Prototype interface used by Additional attribute handlers to do import
export of Additional attributes.
*
*/
public interface WPCPDMObjectAttributeHandler {
/**
* Export Collection of PDMObjectAttributes for a given object
* @param paramObject Object whose PDMObjectAttributes to be set.
* @return
* @throws CWPException
*/
Collection<PDMObjectAttribute> exportPDMObjectAttributes (Object paramObject)
throws CWPException;
/**
* Checks the conflict for a given set of PDMVersion and its object.
* @param cwpSet set of PDMVersion.
* @param identifier2obj Hash map of identifier to object.
* @return
* @throws WTException
* @throws WTPropertyVetoException
*/
Collection<CWPConflictElement> checkConflict(CWPSet cwpSet, HashMap
identifier2obj)
throws CWPConflictException, CWPException;
/**
* Collection API for Updating the PDMObjectAttribute
* @param map
* Map of PDMObjectAttribute to Object.
*
* @throws CWPException
*/
void updatePDMObjectAttributes(Map<Object, Object>attribute2Object) throws
CWPException;
/**
* Indicates whether the implementer is of Master attribute or Object attribute.
* @return
*/
boolean isMastered();
}
この情報を次のように編集します。
exportPDMObjectAttributes - マスター CAD ドキュメントの属性についての PDMObjectAttribute リストをエクスポートするために使用されます。属性はマスターまたは作業版数オブジェクトで使用できます。PDMObjectAttribute は、ハンドラ、名前、タイプ、および値を指定して作成できます。
checkConflict - インポートされる属性のコンフリクトを確認し、コンフリクト情報を含む CWPConflictElement のコレクションを返します。次の引数を指定できます。
PDMObjectAttribute を含む PDMVersion の CWPSet
Object への PDMGlobalIdentifier の HashMap
updatePDMObjectAttributes - PDMObject 属性をインポートします。属性とオブジェクトのマッピングを使用できます。
isMastered - 属性がマスターオブジェクトと作業版数オブジェクトのどちらに属するかを示します。
2. サーバーで、<Windchill>\Codebase\com\ptc\wpc\wncadapter\server\attributes\wpc-pdmobject-attribute.xconf ファイルを編集します。追加属性ごとに次のプロパティを追加します。
<Service context="default"
name="com.ptc.wpc.attributes.WPCPDMObjectAttribu
teHandler">
<Option
serviceClass="com.ptc.wpc.wncadapter.server.attr
ibutes.handlers.MasterIBAHandler" requestor="java.
lang.Object" selector="MASTER_IBA" cardinality=
"duplicate"/>
</Service>
この情報を次のように編集します。
serviceClass - com.ptc.wpc.wncadapter.server.attributes.handlers.MasterIBAHandler を、作成したクラスのパスで置換します。
requestor - java.lang.Object を属性の属性タイプで置換します。
selector - MASTER_IBA を属性のハンドラキーで置換します。
* 
いずれのハンドラも、このファイルから除去しないでください。除去した場合は属性がエクスポートされません。
3. xconfmanager ツールを使用して、変更を wpc-pdmobject-attribute.xconf ファイルに適用します (xconfmanager -p を実行します)。
4. メソッドサーバーを再起動します。
追加属性の詳細
次に、各追加属性の詳細情報を示します。
名前
委任 - com.ptc.wpc.wncadapter.server.attributes.handlers.NameHandler
ハンドラキー - NAME
名前 - name
タイプ - java.lang.String
package.xml ファイルのエクスポートの例:
<attribute>
<handler>NAME</handler>
<name>name</name>
<value>na_border004.asm</value>
<type>java.lang.String</type>
</attribute>
番号
委任 - com.ptc.wpc.wncadapter.server.attributes.handlers.NumberHandler
ハンドラキー - NUMBER
名前 - number
タイプ - java.lang.String
package.xml ファイルのエクスポートの例:
<attribute>
<handler>NUMBER</handler>
<name>number</name>
<value>NUM_BORDER003.asm</value>
<type>java.lang.String</type>
</attribute>
組織 ID
委任 - com.ptc.wpc.wncadapter.server.attributes.handlers.OrgIdHandler
ハンドラキー - ORGID
名前 - OrgId
タイプ - java.lang.String
package.xml ファイルのエクスポートの例:
<attribute>
<handler>ORGID</handler>
<name>OrgId</name>
<value>0141$Demo_Org</value>
<type>java.lang.String</type>
</attribute>
マスター CAD ドキュメントの属性 (マスター IBA)
委任 - com.ptc.wpc.wncadapter.server.attributes.handlers.MasterIBAHandler
ハンドラキー - MASTER_IBA
名前 - Windchill で定義
タイプ - Windchill で定義
package.xml ファイルのエクスポートの例:
<attribute>
<handler>MASTER_IBA</handler>
<name>REAL_NUMBER</name>
<value>60.6;PRECISION=3</value>
<type>wt.iba.value.FloatValue</type>
</attribute>
<attribute>
<handler>MASTER_IBA</handler>
<name>IntegerNumber</name>
<value>30</value>
<type>wt.iba.value.IntegerValue</type>
</attribute>
<attribute>
<handler>MASTER_IBA</handler>
<name>StringDescription</name>
<value>Border assembly 003</value>
<type>wt.iba.value.StringValue</type>
</attribute>
<attribute>
<handler>MASTER_IBA</handler>
<name>VALUE1</name>
<value>6</value>
<type>wt.iba.value.IntegerValue</type>
</attribute>
<attribute>
<handler>MASTER_IBA</handler>
<name>ReleaseTime</name>
<value>2013-08-07 02:57:00.0</value>
<type>wt.iba.value.TimestampValue</type>
</attribute>