高度なカスタマイズ > Info*Engine ユーザーガイド > Info*Engine カスタムタグリファレンス > Info*Engine タグ > core ライブラリのタグ > getValue
  
getValue
getValue タグは、指定された属性の文字列値を、入力グループ内の最初の要素から読み込みます。
このタグはほかの Info*Engine タグにネストできません。
このタグをスクリプトレットに組み込まないでください。タグはテキストとして読み取られるため、スクリプトレットに組み込むと、コンパイラでエラーが発生します。たとえば、以下のスクリプトレットはコンパイルされません。
<%
float total = 0;
%>
<ie:forEach ...>
<% total += <ie:getValue name="SAL"/>;%>
</ie:forEach>
代わりに、スクリプトレット内では getAttributeValue メソッドを使用できます。このメソッドの使用例については、下記の「例」のセクションを参照してください。
構文
<ie:getValue name="attr_name" groupIn="group_name"/>
属性の説明
必須属性: name
groupIn
入力グループとして使用する Info*Engine グループの名前を指定します。
この属性はオプションです。この属性を省略すると、VDB に最後に追加されたグループが使用されます。
name
Info*Engine 入力グループ内の最初の要素から読み込む値を持つ属性の名前を指定します。
この属性は必須です。
以下の例は、ページが Info*Engine の core タグライブラリのタグを使用し、タグに ie プリフィックスを使用することを宣言します。この例は、employees グループが CreateEmployeeGroup タスクの結果として存在することを前提としています。getValue タグは table HTML タグにネストされ、表示されたテーブル行の要素の値を生成します。
<%@ taglib uri="http://www.ptc.com/infoengine/taglib/core"
prefix="ie" %>
<!-- create input group -->
<ie:task uri="CreateEmployeesGroup"/>
<!-- iterate group, displaying the salary for one employee -->
<!-- in each iteration -->
<table>
<tr><td>Employee Name</td><td>Salary</td></tr>
<ie:forEach groupIn="employees" groupOut="employee">
<tr>
<td><ie:getValue name="ENAME"/></td>
<td>$<ie:getValue name="SAL"/></td>
</tr>
</ie:forEach>
</table>
以下のページ例では、getValue タグを使用して各要素内の選択された属性を表示し、スクリプトレットを使用して現在の給料の合計を計算します。給料の合計の計算には Info*Engine の getAttributeValue メソッドを使用します。
<%@page language="java" session="false" errorPage="../IEError.jsp"
<%@ taglib uri="http://www.ptc.com/infoengine/taglib/core"
prefix="ie" %>
<!-- create a group that contains employee name, number, and salary -->
<ie:task uri="CreateEmployeesGroup"/>
<html>
<body>
<ie:getService varName="pie"/>
<% float tot_sal = 0; %>
<!-- iterate group, displaying the salary for one employee -->
<!-- in each iteration and calculating the total salary -->
<ie:forEach groupIn="employees" groupOut="one-element">
<b>Employee Number</b>:<ie:getValue name="EMPNO"/><br>
<b>employee name:</b><ie:getValue name="ENAME"/><br>
<b>salary:</b>$<ie:getValue name="SAL"/><br>
<hr><br>
<%
String ssal = pie.getAttributeValue ( "one-element", 0, "SAL" );
tot_sal += Float.parseFloat ( ( (ssal != null && !ssal.equals(""))
? ssal :
"0" ) );
%>
</ie:forEach>
<!-- Display the salary total for all employee in the group -->
<b>Salary Total:</b>$<%=tot_sal%><br>
</html>
</body>