高度なカスタマイズ > ビジネスロジックのカスタマイズ > Windchill で標準を使用したデータ交換 > EXPRESS を使用した STEP データ交換 > テンプレートの実装 > 関数のカテゴリ > Get 関数
  
Get 関数
Get 関数は、以下のように動作します。
Get 関数を呼び出すと、ヒットが 0 個以上返されます。
すべての引数を指定すると、ヒットがない場合や、1 個だけ返される場合もあります。
すべての引数が不定である場合 (値が ? で、Java の Null に相当する)、そのテンプレートタイプのすべてのインスタンスが返されます (0 個であることもあります)。
引数を複数指定すると、Get 関数はサーチとして動作します。この場合、関数呼び出しによって、入力パラメータと一致するインスタンスの総計が返されます (0 個であることもあります)。
セクション 1
テンプレート拡張インスタンスが以前に初期化されている (プライベートまたはグローバルフラグにチェックマークが付いている) 場合、サーチセクションが入力されます。推奨されているサーチの実装方法はありません。実装はすべてテンプレートの構造次第です。
セクション 2
セクション 2 は、テンプレート拡張インスタンスがそれまでに初期化されていない場合に入力されます。get_representing_part を見ると、セクション 2 は
xpxGetEntityExtentBN (PLCSMODELID,'Part_view_definition',prod_def_bag);
REPEAT i := 1 TO SIZEOF(prod_def_bag);
.......
で始まっています。
たとえば、ポピュレーションでは 'Part_view_definition' のすべてのインスタンスがループになっています。これはテンプレートの "ルート" であり、'Part_view_definition' インスタンスごとに representing_part が 1 つあります。その他のテンプレートタイプでも、"ルート" と拡張エンティティは同様に 1 対 1 の関係になっています。
適切にインスタンス化されていない 'Part_view_definition' インスタンスは通知なしでスキップされます。ポピュレーションが事前に適切に検証されている場合、このようなイベントは発生しません。例外が発生するか、少なくともそのインスタンスは不適切なものとしてログに記録されます。
representing_part 属性のポピュレーション
part_id
部品には、プリンシパル Part_identification_code に加えて多数のエイリアス ID (例: Part_name) がある場合がありますが、このコンテキストでは、Part_identification_code または有効なサブタイプとして分類されている ID を見つけるために get_assigning_identification から返されたリストが反復されます。
part_ver
Part_version の ID は 1 つまでです (1 つのバージョン ID)。そのため、ユーティリティ helper_get_one_assigning_identification を使用してこの 1 つのバージョンを取得します。
domain
Part_view_definition.initial_context に接続されている分類 (View_definition_context) を取得するには、get_assigning_reference_data 関数を使用します。Discipline_domain (またはそのサブタイプ) に該当するものは、domain に割り当てられます。
life_cycle_stage
Part_view_definition.initial_context に接続されている分類 (View_definition_context) を取得するには、get_assigning_reference_data 関数を使用します。Life_cycle_stage (またはそのサブタイプ) に該当するものは、life_cycle_stage に割り当てられます。
prt
Part_view_definition.defined_version.of_product と同じです。
version
Part_view_definition.defined_version と同じです。
view
Part_view_definition インスタンスそのものです。
contxt
Part_view_definition.initial_context と同じです。
catgy
ポピュレーションで 1 つの製品カテゴリを見つけるには、xpxGetEntityExtentBN を使用します。