繰り返しの式

繰り返しセクションに使用するレポート式の例を次に示します。

繰り返しの質問にアクセスするには、繰り返しセクションをテンプレートに追加します。 defects という繰り返しの場合、${#defects} プレースホルダーは繰り返しセクションの開始を示し、${/} は終了を示します。 繰り返し内で質問を指すプレースホルダーは、繰り返しセクションの開始プレースホルダーと終了プレースホルダーの間に存在する必要があります。

注意:

テーブル内の繰り返しの内容を印刷する場合は、開始タグと終了タグが 2 つともテーブル内またはテーブル外に配置されていることを確認します。 これらのタグの 1 つがテーブル内で、もう 1 つがテーブル外の場合、レポートを生成することはできません。 一般的に、開始タグと終了タグはテーブル内に配置され、開始タグは最初のセル内、終了タグは最後のセル内にあります。

入れ子状の繰り返し内にある質問にアクセスするには、対象となる繰り返しセクションの上にある各繰り返しレイヤーのタグの間に、そのタグを配置します。 例を以下に示します。

${#repeat1}
${#repeat2}
${#repeat3}
${field1InRepeat3}, ${repeat2.field1}, ${repeat1.field1}, ${mainLayer.field1} 
${/}
${/}
${/}

レポート式は、${layername} 構文を使用してレイヤー名を参照するときに、ハイフンなどの特殊文字を読み取ることができません。 名前に特殊文字が含まれるレイヤーを参照するときは、特殊文字の場所にアンダースコアを使用してください。 または、$layers キーワードとレイヤー名またはレイヤー ID のいずれかを使用してレイヤーを参照することもできます (例: ${$layers["my layer name"]}${$layers[0]})。 これは、レイヤー名に ASCII 以外の文字が含まれている場合や、フィーチャ サービスでレイヤー名が重複している場合に役立ちます。

親の繰り返しと同じ名前を持つ繰り返しに含まれるフィールドを参照するには、フィールド名と繰り返し名の両方を含む完全なパス構文を使用します (例: ${sharedName.sharedName})。

繰り返しレコードのインデックスを表示するには、予約済みキーワード $featuregetValue 式を使用します。 次の例では、繰り返しの最初のレコードでは 1、2 つ目のレコードでは 2 などと生成します。

${#defects}
${$feature | getValue: "position"}
${/}