プレースホルダ

最終更新日: 2020年3月14日
R8 | R9

プレースホルダの書式

テンプレートファイル内に「プレースホルダ」を用意することができます。その項目に、実際のデータが格納されます。

プレースホルダの書式は次のとおりです。

詳細表示用テンプレートファイルでは、モデル名に「_p」を付記して区別します。一覧表示用テンプレートファイルでは、モデル名に「_lp」を付記します。

${モデル名_p.英語項目名}

プレースホルダの具体例

ここでは「顧客(customer)」というモデルの「氏名(customername)」という項目を例にとります。

プレースホルダ表記は、まずモデル名の末尾に「_p」を付加します。これに「.」を付与し、英語の項目名をその後につけます。最後に、この文字列の先頭に”${”を、末尾に”}”を付加します。

この例では「${customer_p.customername}」となります。 テンプレートファイル中にこの表記を埋め込んだ部分が、データベースに含まれる顧客氏名データに置き換わります。

プレースホルダのルール

プレースホルダに関するいくつかのルールについて説明します。

(1) プレースホルダ名は半角英数字で入力する。

全角文字でプレースホルダを指定しても正しく置換されません。

(2) 該当するデータが存在しない場合は「空白」文字に置換される。

プレースホルダに該当する項目の値がデータに格納されていない場合、プレースホルダは空白文字に置換されます。

(3) 権限設定を行った項目は、帳票でも(同設定が)有効となる。

項目毎に権限設定を行った場合、帳票でも有効となります。例えばある項目に隠し権限を設定した場合、帳票でも出力されません。(プレースホルダは空白文字に置換されます。)

(4) 一つの項目についてのプレースホルダを複数、異なる場所に記述することもできる。

例えば ${customer_p.customername} というプレースホルダを複数個記述した場合、すべてのプレースホルダが置換されます。

(5) プレースホルダは(Excelファイルの)1 シート目のみに適用される。

プレースホルダが適用されるのは 1 シート目のみです。2 シート目以降はプレースホルダが適用されません。 このルールを使って、複雑なレイアウトを作成することもできます。

(6) プレースホルダとそれ以外の文字は混在できる。

プレースホルダとそれ以外の通常の文字を混在させることができます。プレースホルダのみが置換され、他の文字列はそのまま維持されます。例: 「顧客名は${customer_p.customername}です。」

表記一覧(詳細表示)

詳細表示用モデル (末尾が "_p" で終わるもの)について、各データ型やデータの種類におけるプレースホルダの表記方法を示します。

文字列型/数値型/日付型

モデル中の項目の値が転記されます。

表記 ${モデル名_p.項目名}
${customer_p.name}

数値型(出力フォーマット)

数値型項目は標準で、出力フォーマットは適用されません。 指定した出力フォーマットを適用した値を出力したい場合、接頭語 fmt: を付与します。

表記 ${fmt:モデル名_p.項目名}
${fmt:sale_p.uriage}

ワンポイント

fmt: 付与した場合、あわせてExcel帳票テンプレートの当該セルの「セルの書式設定...>数値」を指定してください。

日付型(シリアル値)

日付型項目は標準で、出力フォーマットが適用されます。 この出力フォーマットを無効にし、モデル中の項目の値をExcel のシリアル値として出力するオプションを用意しています。接頭語 e: を付与します。

表記 ${e:モデル名_p.項目名}
${e:customer_p.date}

ワンポイント

シリアル値を使うと、Excel帳票のテンプレートファイルで、(Excelが提供する)任意の日付書式を設定できます。Excel帳票テンプレートの当該セルの「セルの書式設定...>日付」を指定してください。

モデル参照

参照先モデルの「内容部」が転記されます。

表記 ${モデル名_p.項目名}
${customer_p.ctype}

モデル参照(ID部)

項目名の後ろに "#id" を付与すると、参照先モデルの「ID部」が転記されます。(一覧表示には未対応です。)

表記 ${モデル名_p.項目名#id}
${customer_p.ctype#id}

繰り返し項目

添字に対応した繰り返し項目の値が転記されます。添字は「0」から開始されます。

表記 ${モデル名_p.項目名.添字}
${customer_p.email.0}

繰り返しコンテナ(固定長)

添字に対応したコンテナの項目の値が転記されます。添字は「0」から開始されます。詳細は"繰り返し項目の固定長指定"をお読みください。

表記 ${モデル名_p.コンテナ名.添字.項目名}
${customer_p.report.0.rid}

繰り返しコンテナ(可変長)

出力する数に応じて帳票イメージが伸縮します。詳細は"繰り返し項目の可変長指定"をお読みください。

一行にまとめて記述します。(複数行にまたがって記述することはできません。)

表記 ${モデル名_p.コンテナ名.#.項目名}
${customer_p.report.#.rid}

参照先モデルのデータ値

参照先モデルのデータ値が転記されます。 直接項目を参照していない項目についても、次の方法で参照先モデルの任意の項目のデータを転記することができます。

表記 ${自モデル名_p.項目名.参照先モデル名_p.参照する項目名}
${management_p.name.customer_p.companyname}

参照先モデルが外部キー連携している場合の子モデルのデータ値

参照先モデルが外部キー連携している場合の子モデルのデータ値が転記されます。

表記 ${自モデル名_p.項目名.参照先モデル名_p->参照先モデルの子モデル名.添字.参照先モデルの子モデル名_p.参照する項目名}
${management_p.name.customer_p->support.0.support_p.supportdate}

外部キー連携している場合の子モデルの繰り返しコンテナのデータ値

外部キー連携している場合の子モデル内の繰り返しコンテナのデータ値が転記されます。

表記 ${自モデル名_p->参照先モデルの子モデル名.添字.参照先モデルの子モデル名_p.コンテナ名.添字.項目名}
${customer_p->support.0.support_p.report.0.supportdate}

参照先モデルが外部キー連携している場合の子モデルの繰り返しコンテナのデータ値

参照先モデルが外部キー連携している場合の子モデル内の繰り返しコンテナのデータ値が転記されます。

表記 ${自モデル名_p.項目名.参照先モデル名_p->参照先モデルの子モデル名.添字.参照先モデルの子モデル名_p.コンテナ名.添字.項目名}
${management_p.name.customer_p->support.0.support_p.report.0.supportdate}

画像(ファイル型)

ファイル型項目は次のように扱うことができます。

ファイル名

表記 ${モデル名_p.項目名}
${customer_p.photo}
${customer_p.report.0.photo} 繰り返しコンテナ(固定長)
${customer_p.report.#.photo} 繰り返しコンテナ(可変長)

ファイルのパス

upload_dirフォルダからの相対パスとなります。

表記 ${モデル名_p.項目名_jshfilename}
${customer_p.photo_jshfilename}
${customer_p.report.0.photo_jshfilename} 繰り返しコンテナ(固定長)
${customer_p.report.#.photo_jshfilename} 繰り返しコンテナ(可変長)

画像

セルに画像を埋め込みます。対応しているフォーマットはjpeg,pngです。

表記 ${モデル名_p.項目名_jshfilename:image}
${customer_p.photo_jshfilename:image}
${customer_p.report.0.photo_jshfilename:image} 繰り返しコンテナ(固定長)
${customer_p.report.#.photo_jshfilename:image} 繰り返しコンテナ(可変長)

画像の埋め込み範囲

画像を埋め込むセルの範囲を指定することができます。省略時は col と row がそれぞれ 5 となります。

表記 ${モデル名_p.項目名_jshfilename:image:col=(縦方向):row=(横方向):sx=(X軸スケール):sy=(Y軸スケール)}
${customer_p.photo_jshfilename:image:col=1:row=1:sx=1.0:sy=1.0}

sx, sy は省略できます。省略時は登録画像のサイズが維持されます。1.0 を指定すると、指定したセルのサイズに収まるように調整されます。0.5 を指定すると、指定したセルの半分に収まるように調整されます。なお、sx, sy を指定するときは必ず両方を指定してください。

プレースホルダ jshfilename:image 表記ではなく、スクリプトで表示範囲を指定することもできます。(スクリプトの設定が優先されます。)

バーコード(文字列型)8.3.0

使い方は「出力制御(スタイル)>バーコード出力」をお読み下さい。

表記 ${モデル名_p.項目名_jshBarcode:sx=(X軸スケール):sy=(Y軸スケール)}
${customer_p.codebar_jshBarcode:sx=1.5:sy=1.0}

sx, sy は省略できます。sx と sy にそれぞれ 1.0 を指定すると、指定したセルのサイズに収まるように調整されます。0.5 を指定すると、指定したセルの半分に収まるように調整されます。なお、sx, sy を指定するときは必ず両方を指定してください。

表記一覧(一覧表示)

一覧表示用モデル (末尾が "_lp" で終わるもの)について、各データ型やデータの種類におけるプレースホルダの表記方法を示します。

添字は「0」から開始されます。この添字は数字ではなく「#」というワイルドカードを使用します。このプレースホルダのある行を(0から)繰り返し生成します。

文字列型/数値型/日付型

モデル中の項目の値が転記されます。

表記 ${モデル名_lp.項目名.添字}
${customer_lp.name.#}

日付型項目の "e:" 指定、ならびに数字型項目の "fmt:" 指定も利用できます。

画像(ファイル型)

文字列型と同様に、末尾に「#」を指定します。例 ${customer_lp.photo_jshfilename:image.#}

画像の埋め込み範囲

画像を埋め込むセルの範囲を指定することができます。省略時は col と row がそれぞれ 5 となります。

表記 ${モデル名_lp.項目名_jshfilename:image:col=(縦方向):row=(横方向):sx=(X軸スケール):sy=(Y軸スケール).#}
${customer_lp.photo_jshfilename:image:col=1:row=1:sx=1.0:sy=1.0.#}

sx, sy は省略できます。省略時は登録画像のサイズが維持されます。1.0 を指定すると、指定したセルのサイズに収まるように調整されます。0.5 を指定すると、指定したセルの半分に収まるように調整されます。なお、sx, sy を指定するときは必ず両方を指定してください。(sxのみ、またはsyのみの指定は無視されます。)

繰り返し項目

繰り返し項目は「,(コンマ)」区切りで出力されます。

繰り返しコンテナ

繰り返しコンテナ内の項目は出力できません。(JOIN関数などを用いて繰り返しコンテナを「1つの」文字列に整形した出力用項目を内部で用意し、それを帳票で用いることはできます。

検索結果数

一覧表示の場合は検索結果数を、ダウンロードの場合はダウンロード処理を行なったあとでカウントされた行数が転記されます。

表記 ${resultsize}
(表記に同じ)

検索条件値

一覧表示している検索条件の値が転記されます。検索条件はモデル名に "_cp" という文字を付与することで参照できます。

表記 ${モデル名_cp.項目名}
${customer_cp.ctype} ※1
${customer_cp.refitem} ※2
${customer_cp.refitem#id} ※3

※1は通常の項目です。
※2はモデル参照項目の内容部です。
※3はモデル参照項目のID部です。

検索条件値(繰り返しコンテナ)

検索条件に繰り返しコンテナを含む場合、コンテナ名は除きます

表記 ${モデル名_cp.コンテナを除く項目名}
繰り返しコンテナ cont 内の項目 field が検索条件として用いられており、これを一覧帳票に含める場合。
${customer_cp.field}

検索条件値(範囲検索項目)

一覧表示している範囲検索条件の値が転記されます。項目名の末尾に "1jshparam", "2jshparam" を付与します。

表記 開始値:${モデル名_cp.項目名1jshparam}
終了値:${モデル名_cp.項目名2jshparam}
${customer_cp.cdate1jshparam}
${customer_cp.cdate2jshparam}

注意

検索条件値は、検索処理を行ったタイミングで値がセットされます。画面に検索条件を入力しても、検索処理を行わずに一覧表示の出力を行った場合、検索条件のプレースホルダは空となります。

表記一覧(共通)

詳細表示、一覧表示のいずれでも利用できます。

ユーザアカウント

ログオンしているユーザアカウント名が転記されます。

表記 ${username}
(表記に同じ)

作成日時

帳票を作成(出力)した日時が転記されます。なお「出力するファイル名」に適用する場合は ${createdatestr} となります。

表記 ${createdate}
(表記に同じ)

モデルID8.3.0

対象モデルのIDが転記されます。

表記 ${modelid}
(表記に同じ)

モデル名8.3.0

対象モデルの名前が転記されます。

表記 ${modelname}
(表記に同じ)

制約

  • 繰り返しコンテナの場合、出力可能な上限数は65,536行です。
  • "自己参照による検索項目を指定する" を設定した項目には未対応です。(プレースホルダとして${モデルID_cp.項目ID.モデルID_p.項目ID}が生成されますが、利用することはできません。)