高度なカスタマイズ > Info*Engine ユーザーガイド > Info*Engine カスタムタグリファレンス > Info*Engine タグ > core ライブラリのタグ > param
  
param
param タグは、webject タグ、task タグ、および directory service タグ内で使用するパラメータを定義します。
Webject パラメータは、指定される Webject の入力基準を指定します。
タスクパラメータを使用して以下の項目を設定できます。
タスクで利用できる @FORM コンテキストグループ変数。
タスクで利用できる VDB グループ。
タスクの終了時に利用できる VDB グループ。
ディレクトリサービスパラメータは、作成、更新、照会、およびリスト表示するディレクトリサービスエントリへの入力および出力として使用されるグループの名前を指定します。
どの場合も、パラメータの要件は、それが指定される個々の Webject、タスク、およびディレクトリサービスの操作によって異なります。詳細については、実行する特定の Webject、タスク、またはディレクトリサービスの操作の説明を参照してください。
param タグに属性値として定義式を指定できます。詳細については、定義式を参照してください。
このタグは webjecttaskcreateObjectslistObjectsqueryObjects、および updateObjects タグにネストできます。
構文
<ie:param name="PARAMETER_NAME"
data="value_list"
delim="delimiter"
default="default_value"
elementSeparator="character"
valueSeparator="character"/>
属性の説明
必須属性: namedata
データ
name 属性に指定されたパラメータに割り当てる 1 つまたは複数のデータ値を指定します。データ値は引用符で囲みます。指定できるデータ値の数およびタイプは個々のパラメータによって異なります。
複数のデータ値を割り当てることができるパラメータの場合、複数のデータ値を入力する最も一般的な方法は、すべてのタグが同じ name 属性とさまざまな data 属性を持つ、複数の param タグを指定することです。
区切り記号で値を区切り、delim 属性にセパレータを指定することによって、data 属性に複数の値を指定することもできます。値のセパレータとしてコンマを使用するには、以下の構文を使用します。
data="value1,value2,…,valueN" delim=","
たとえば、Return-Groups Webject で複数のグループを返すには、以下の 2 つの param タグを指定します。
<ie:param name="GROUP_IN" data="employees"/>
<ie:param name="GROUP_IN" data="consultants"/>
あるいは、delim 属性を含んでいる 1 つの param タグを指定します。
<ie:param name="GROUP_IN" data="employees,consultants" delim=","/>
data 属性は必須属性です。
default
代入定義式が値を返さない場合に使用されるデフォルト値のテキスト文字列を指定します。この属性を指定するときは、デフォルト値を引用符で囲む必要があります。
data 属性に代入定義式を指定する場合は、定義式のデフォルトを指定する必要があります。たとえば、以下の param タグでは、ATTRIBUTE パラメータのデフォルトをアスタリスク (*) に設定します。
<ie:param name="ATTRIBUTE" data="$(@FORM[]attr[])" default="*"/>
この属性はオプションです。
delim
data 属性内で複数の値を区切るときに Info*Engine が使用する区切り記号を定義します。この属性を指定するときは、記号を引用符で囲む必要があります。たとえば、区切り記号としてコンマを使用する場合、data および delim 属性の構文は以下のとおりです。
data="value1,value2,…,valueN" delim=","
以下の param タグの例では、data 属性に 3 つの値を定義し、区切り字としてコンマを使用しています。
<ie:param name="ATTRIBUTE" data="ename,phone,title" delim=",">
data 属性の値を 1 つだけ持つ複数の param タグを使用して、この同じパラメータを以下のように指定することもできます。
<ie:param name="ATTRIBUTE" data="ename">
<ie:param name="ATTRIBUTE" data="phone">
<ie:param name="ATTRIBUTE" data="title">
実際の Webject では、両方のケースで生成されるパラメータは、Webject がデータリポジトリから返されるデータグループ内の従業員名 (ename)、従業員の電話番号 (phone)、従業員の役職 (title) の情報を受け取ると予想するプロセッサを指定します。
この属性はオプションです。
elementSeparator
data 属性内の代入定義式を処理するときに Info*Engine が使用する要素セパレータを指定します。指定された文字は、複数の要素 (行) からなる属性値を連結するために使用されます。定義式に要素セパレータとしてアスタリスク (*) を指定すると、複数の要素を選択できます。
デフォルトでは、Info*Engine は要素セパレータとしてセミコロンを使用します。代入定義式の定義については、ダイナミックパラメータ値の置換を参照してください。
以下の param タグには、要素セレクタとしてアスタリスクを使用し、要素セパレータを # に設定する代入定義式が data 属性内に含まれています。
<ie:param name="ATTRIBUTE" data="$(grp1[*]attr[0]}" elementSeparator="#"/>
この属性はオプションです。
name
データ値が割り当てられるパラメータ名を指定します。パラメータ名は引用符で囲みます。パラメータ名には大文字と小文字の区別がありませんが、大文字で表記しています。
この属性は必須です。
valueSeparator
data 属性内の代入定義式を処理するときに Info*Engine が使用する値セパレータを指定します。指定された文字は、1 つの属性場所に含まれている複数の値を連結するときに使用されます。この場所は、代入定義式の処理によって生成される属性 (列) と要素 (行) のペアによって定義されます。定義式に値セパレータとしてアスタリスク (*) が含まれている場合は、複数の値を選択できます。
デフォルトでは、Info*Engine は値セパレータとしてコンマを使用します。代入定義式の定義については、ダイナミックパラメータ値の置換を参照してください。
以下の param タグには、値セレクタとしてアスタリスクを使用し、値セパレータを | に設定する代入定義式が data 属性内に含まれています。
<ie:param name="ATTRIBUTE" data="$(grp1[0]attr[*])" valueSeparator="|"/>
この属性はオプションです。
以下の例は、ページまたはタスクが Info*Engine の core タグライブラリのタグを使用し、タグに ie プリフィックスを使用することを宣言します。param タグは Copy-Group Webject の 2 つのパラメータを定義します。
<%@ taglib uri="http://www.ptc.com/infoengine/taglib/core"
prefix="ie" %>
<ie:webject name="Copy-Group" type="GRP">
<ie:param name="GROUP_IN" data="grp1"/>
<ie:param name="GROUP_OUT" data="grp2"/>
</ie:webject>