部品の読み込み
既存の部品を製品内の別の既存の部品に追加する
この例は以下を前提としています。
Part-1 は製品 MyProduct-1 の中に存在する。この部品はあらかじめ読み込まれているか、ユーザーインタフェースを使用して追加されています。
ExistingPart-1 および ExistingPart-2 はほかの製品またはライブラリにある。
MyProduct-1 は組織 MyOrg に存在する。
XML データは DataFile.xml ファイルに含まれている。
これらを前提にして、以下のコマンドを使用して読み込みを実行できます。
windchill wt.load.LoadFromFile -d DataFile.xml -u wcadmin
-p wcadmin -CONT_PATH /wt.inf.container.OrgContainer=MyOrg
/wt.pdmlink.PDMLinkProduct=MyProduct-1
読み込みは以下のコマンドを使用してライブラリコンテキストで実行することもできます。
windchill wt.load.LoadFromFile -d DataFile.xml -u wcadmin
-p wcadmin -CONT_PATH /wt.inf.container.OrgContainer=MyOrg
/wt.inf.library.WTLibrary=MyLib
データファイルの例を以下に示します。
<?xml version="1.0"?>
<!DOCTYPE NmLoader SYSTEM "standardX20.dtd">
<NmLoader>
<csvAssemblyAddLoad handler="wt.part.LoadPart.addPartToAssemblyLoad">
<csvassemblyPartNumber>0000000022</csvassemblyPartNumber>
<csvconstituentPartNumber>0000000002</csvconstituentPartNumber>
<csvconstituentPartQty>1</csvconstituentPartQty>
<csvconstituentPartUnit>ea</csvconstituentPartUnit>
<csvassemblyPartVersion>D</csvassemblyPartVersion>
<csvassemblyPartIteration>1</csvassemblyPartIteration>
<csvassemblyPartView>Manufacturing</csvassemblyPartView>
<csvorganizationName></csvorganizationName>
<csvorganizationID></csvorganizationID>
</csvAssemblyAddLoad>
</NmLoader>
LoadedAssm-1 という新規部品を作成し、既存部品を構成部品として追加する
この例は以下を前提としています。
ExistingPart-1 はほかの製品またはライブラリにある。
MyProduct-1 は組織 MyOrg に存在する。
XML データは DataFile.xml ファイルに含まれている。
これらを前提にして、以下のコマンドを使用して読み込みを実行できます。
windchill wt.load.LoadFromFile -d DataFile.xml -u wcadmin
-p wcadmin -CONT_PATH /wt.inf.container.OrgContainer=MyOrg
/wt.pdmlink.PDMLinkProduct=MyProduct-1
データファイルの例を以下に示します。
<?xml version="1.0"?>
<!DOCTYPE NmLoader SYSTEM "standardX20.dtd">
<NmLoader>
<csvBeginWTPart handler="wt.part.LoadPart.beginCreateWTPart" >
<csvuser></csvuser>
<csvpartName>LoadedAssm-1</csvpartName>
<csvpartNumber>LoadedAssm-1</csvpartNumber>
<csvtype>separable</csvtype>
<csvsource>make</csvsource>
<csvfolder>/Default</csvfolder>
<csvlifecycle>Default</csvlifecycle>
<csvview></csvview>
<csvteamTemplate>System.TestTeamForLoads</csvteamTemplate>
<csvlifecyclestate>INWORK</csvlifecyclestate>
<csvtypedef></csvtypedef>
<csvversion></csvversion>
<csviteration></csviteration>
<csvparentContainerPath></csvparentContainerPath>
</csvBeginWTPart>
<csvEndWTPart handler="wt.part.LoadPart.endCreateWTPart" >
<csvpublishFlag></csvpublishFlag>
<csvparentContainerPath></csvparentContainerPath>
</csvEndWTPart>
<csvAssemblyAddLoad handler="wt.part.LoadPart.addPartToAssemblyLoad" >
<csvassemblyPartNumber>LoadedAssm-1</csvassemblyPartNumber>
<csvconstituentPartNumber>ExistingPart-1</csvconstituentPartNumber>
<csvconstituentPartQty>1</csvconstituentPartQty>
<csvconstituentPartUnit>ea</csvconstituentPartUnit>
</csvAssemblyAddLoad>
</NmLoader>
MPMLink ユーザーの場合、ローダーを使用して部品を作成する際に、エンタープライズデータオブジェクトが自動的に作成されることがあります。オブジェクトの自動作成を無効にするには、XML データファイルで NmLoader タグの前後にエレメント DisableEnterpriseDataServiceForPartLoaderEnableEnterpriseDataServiceForPartLoader をそれぞれ追加します。この操作によって、エンタープライズデータオブジェクトとプラント特有の機能データオブジェクトの作成用に設定されているプリファレンスが無視されます。詳細については、MPMLink でのプリファレンスを参照してください。
次の例では、エレメント EnableEnterpriseDataServiceForPartLoaderDisableEnterpriseDataServiceForPartLoader が使用されています。
<?xml version="1.0"?>
<!DOCTYPE NmLoader SYSTEM "standardX20.dtd">
<NmLoader>
<!-- This tag disables the preferences for creating enterprise data while loading the parts -->
<csvDisableEnterpriseDataServiceForPartLoader
handler="com.ptc.windchill.enterprise.data.load.LoadEnterpriseDataPlantFunctionalData.disableEnterpriseDataServiceForPartLoader"/>
<csvBeginWTPart handler="wt.part.LoadPart.beginCreateWTPart" >
<csvuser></csvuser>
<csvpartName>LoadedAssm-1</csvpartName>
<csvpartNumber>LoadedAssm-1</csvpartNumber>
<csvtype>separable</csvtype>
<csvsource>make</csvsource>
<csvfolder>/Default</csvfolder>
<csvlifecycle>Default</csvlifecycle>
<csvview></csvview>
<csvteamTemplate>System.TestTeamForLoads</csvteamTemplate>
<csvlifecyclestate>INWORK</csvlifecyclestate>
<csvtypedef></csvtypedef>
<csvversion></csvversion>
<csviteration></csviteration>
<csvparentContainerPath></csvparentContainerPath>
</csvBeginWTPart>
<csvEndWTPart handler="wt.part.LoadPart.endCreateWTPart" >
<csvpublishFlag></csvpublishFlag>
<csvparentContainerPath></csvparentContainerPath>
</csvEndWTPart>
<csvAssemblyAddLoad handler="wt.part.LoadPart.addPartToAssemblyLoad" >
<csvassemblyPartNumber>LoadedAssm-1</csvassemblyPartNumber>
<csvconstituentPartNumber>ExistingPart-1</csvconstituentPartNumber>
<csvconstituentPartQty>1</csvconstituentPartQty>
<csvconstituentPartUnit>ea</csvconstituentPartUnit>
</csvAssemblyAddLoad>
<!-- This tag enables the preferences for creating enterprise data after loading the parts -->
<csvEnableEnterpriseDataServiceForPartLoader
handler="com.ptc.windchill.enterprise.data.load.LoadEnterpriseDataPlantFunctionalData.enableEnterpriseDataServiceForPartLoader"/>
</NmLoader>
タグの説明
<csvBeginWTPart> タグで使用するタグの説明は以下のとおりです。
user - コンテナの作成者として指定するユーザーの名前。
partName - 部品の名前。値は必須です。
partNumber - 部品番号。値は必須です。
type - 部品がアセンブリか、構成部品かを指定します。この値は新規部品を作成する際に必須で、更新可能です。選択できる値は以下のとおりです。
Separable - 部品は破壊せずに分解できるアセンブリです。たとえば、機械アセンブリは、取り外し可能な複数の留め具 (ネジなど) で構成されています。
Inseparable - 部品はアセンブリですが、いったん組み立てたあとは分解できません。たとえば、溶接金属アセンブリなどがこれにあたります。
Component - 子部品の存在しない部品。
source - 部品の取得場所。次のオプションを使用できます。
Make - 新規部品は内部で作成されます。
Buy - 新規部品は外部で作成されます。
Buy - Single Source - 新規部品は社外の単一のソースから購入されます。
folder - コンテナ内の部品の場所 (/Default など)。
lifecycle - 部品のライフサイクル。
view - 部品のビュー。
teamTemplate - チームテンプレート (System.TestTeamForLoads など)。
lifecyclestate - 部品のライフサイクル状態 (INWORK など)。
typedef - ソフト部品を作成するためのタイプ定義。com.ptc.ptcnet.SoftPart1 など。
version - 部品のバージョン。値を指定しない場合、オブジェクト初期化規則 (OIR) で定義された最初のバージョンが使用されます。
iteration - 部品の作業版数。値を指定しない場合、オブジェクト初期化規則 (OIR) で定義された最初の作業版数が使用されます。
parentContainerPath - 親部品の配置されているコンテキスト。
これは役に立ちましたか?