その他のアプリケーションとの統合 > Windchill Workgroup Manager のマニュアル > CADDS 5 > 管理とコンフィギュレーション > ビジネスプラクティスの設定 > ネーミングおよび番号付けの設定 > ネーミングサービスのカスタマイズ
  
ネーミングサービスのカスタマイズ
ネーミングサービスでは、Windchill のサービス委任メカニズムを使用して、新規 CAD ドキュメントとの作成時に次を指定します。
CAD ドキュメントの番号の設定
CAD ドキュメントの名前の設定
* 
ネーミングサービスはアップロード操作でのみ使用できます。
Windchill 10.0 より前でも、アップロード時のネーミングサービスのカスタマイズを使用して、カスタムコードを使用する名前と番号を生成できます。ただし、Windchill 10.0 より前では、ネーミングサービスのカスタマイズで使用するアップロードリクエストでパラメータを使用できません。
ネーミングポリシーとカスタマイズにシステムが使用する優先順位は以下のとおりです。
名前
1. ネーミングサービスのカスタマイズ。
2. ネーミングのパラメータセット (ネーミングパラメータ)
3. ファイル名 (「アップロード時にファイル名から拡張子をドロップ」プリファレンスは、名前がファイル名 (CAD 名) に基づいて割り当てられている場合にのみ有効)
番号
1. ネーミングサービスのカスタマイズ。
2. 番号付けのパラメータセット (「番号付けパラメータ」)
3. ファイル名 (「アップロード時にファイル番号から拡張子をドロップ」は、名前がファイル名 (CAD 名) に基づいて割り当てられている場合にのみ有効です)。
Windchill ネーミングおよび番号付けポリシーが会社のニーズに対応していない場合は、ネーミングサービスおよび番号付けサービスをカスタマイズして、カスタマイズに合わせて CAD ドキュメントに名前と番号を割り当てることができます。ネーミングサービスをカスタマイズするには、以下の手順を使用します。
1. インタフェース「EPMDocumentNamingDelegate」を実装する Java クラスを作成します。このインタフェースの定義は以下のとおりです。
package com.ptc.windchill.uwgm.proesrv.c11n;
public interface EPMDocumentNamingDelegate
{
public void validateDocumentIdentifier
(DocIdentifier docIdentifier);
}
クラス DocIdentifier の定義は以下のとおりです。
package com.ptc.windchill.uwgm.proesrv.c11n;
import java.util.HashMap;
public class DocIdentifier
{
private String m_modelName;
private String m_docName;
private String m_docNumber;
private HashMap m_parameters;
public DocIdentifier(String modelName, String docName,
String docNumber, HashMap params)
{ m_modelName = modelName; m_docName= docName;
m_docNumber= docNumber;
m_parameters= params; }
/** get the CAD Name for the model **/
public String getModelName()
{ return m_modelName; }
/** get the EPMDocument name for the model **/
public String getDocName()
{ return m_docName; }
/** set the EPMDocument name for the model **/
public void setDocName(String docname)
{ m_docName = docname; }
/** set the EPMDocument number for the model **/
public void setDocNumber(String docnumber)
{ m_docNumber = docnumber; }
/** get the EPMDocument number for the model **/
public String getDocNumber()
{ return m_docNumber; }
/** get the Pro/E designated parameters for the model.
These are name-value pairs indexed by the name **/
public HashMap getParameters()
{ return m_parameters; }
}
2. 新しいクラスで、以下のメソッドを使用して、CAD ドキュメント (EPMDocument) をネーミング/番号付けするビジネスロジックを実装します。
public void validateDocumentIdentifier(DocIdentifier docIdentifier)
DocumentIdentifier オブジェクトは、アップロードサービスで作成される CAD ドキュメントの CAD ドキュメント名および番号情報を持っています。
この DocIdentifier オブジェクトが表現する CAD ドキュメントの CAD 名を取得するには、次のコードを使用します。
DocIdentifier.getModelName()
CAD アプリケーション指定のパラメータを使用して CAD ドキュメントの番号付け/ネーミングを設定することができます。
関連パラメータを取得するには、次のコードを使用します。
DocIdentifier.getParameters()
DocIdentifier で set メソッドを使用して、新しい名前/番号値を設定します。アップロードサービスでは、適切な場合はこれらの値を使用します。実装例は次の場所にあります。
<Windchill home>/codebase/com/ptc/windchill/uwgm/proesrv/
c11n/EPMDefaultDocumentNamingDelegate.java
3. site.xconf ファイル (<Windchill> 内) を編集して、サーバー上のカスタマイズサービスの使用可能性を示す以下のプロパティを追加します。
<Service context="default" name="com.ptc.windchill.uwgm.proesrv.c11n.
EPMDocumentNamingDelegate" targetFile="codebase/service.properties">
<Option cardinality="singleton" requestor="wt.epm.EPMDocument"
serviceClass="com.ptc.windchill.uwgm.proesrv.c11n.EPMDefaultDocument
NamingDelegate"/>
</Service>
service.properties ファイルに変更を適用するには、以下のコマンドを入力して xconfmanager ツールを実行します。
xconfmanager –p
serviceClass の値の代わりにクラスのパスを使用します (つまり、以下をクラスへのパスに置き換えます)。
com.ptc.windchill.uwgm.proesrv.c11n.EPMDefaultDocumentNami ngDelegate
4. メソッドサーバーを再起動します。