<< 目次を表示 >> ページ位置: Enterprise Architectの拡張 > ソースコード生成のカスタマイズ > コード生成テンプレートフレームワーク > コード生成テンプレートの文法 > テンプレート内から別のテンプレートの呼び出し |
テンプレートを引数付きで呼び出すことにより、別のテンプレートに値を引き渡すことができます。この方法は、既定のテンプレートだけでなく、独自に追加したカスタムテンプレートでも利用できます。再帰的に呼び出せます。
注意: |
テンプレートの呼び出しがループになり、無限に呼び出してしまう形にはならないようにしてください。 |
例:
テンプレートに引数を1つ渡し、戻った値を別の変数に格納します。
$sSource = %StateEnumeratedName($Source)%
複数の引数を渡す例です。
%RuleTask($GUID,$index)%
このような場合には、呼び出された側のテンプレートでは、以下のようにして引数の値を取得できます。
$GUID = $parameter1
$index = $parameter2
以下の例は、再帰的に呼び出している例です。
$GUID = $parameter1
$index = $parameter2
%PI=""%
$nul = "Initialize condition and action object"
$count = %BR_GET("RuletCount")%
%if $count=="" or $count == $index%
%ComputeRulet($GUID)%
\n
%endTemplate%
%Rulet($index)%
\n
$index = %MATH_ADD($index, "1")%
%RuleTask($GUID,$index)%
参照: