はじめに
CustomineにExcel/PDF出力をする場合、テーブルの内容を全行出力することが出来ます。
※Excel/PDF出力をする とは、やること「Excelを出力する」「PDFを出力する」(画面のカスタマイズ)、やること「Excelを出力する」「PDFを出力する」(Job Runner) の事です。
テンプレートによって一覧画面にあるレコードのテーブルまで出力できたり、テーブル内の添付画像を全て出力というのも可能です。
それぞれ指定方法があるので、簡単なテンプレート例から順に紹介していきます。
元になるレコードにはこのような内容が保存されています。これをどのように出力できるかを紹介していきます。
詳細画面からテーブル行を出力する場合
普通に出力
テンプレート例は次のようになります。
$FOREACHにテーブルのフィールドコードを指定します。
結果はこのように出力されます。
シンプルですね。
テーブル外のフィールドも含めたい
テンプレート例は次のようになります。
フィールドコード指定の前に(..)を追加してください。
結果はこのように出力されます。
テーブル行を他システムへ持っていくときなどに便利ですね。
添付ファイルを行別に全部出力したい
テンプレート例は次のようになります。
結果はこのように出力されます。
詳細の内容を画像の左に表示したい場合は、先ほどのテーブル外の時と同じように $STR(..)(詳細) という指定になります。
$FOREACHが入れ子になっている場合は最後の$FOREACHが基準になりますので、書式には注意してください。
添付ファイルは1つだけ出力したい
テンプレート例は次のようになります。
(0)と指定することで1つに限定することが出来ます。先ほどと違い、$FOREACHは1つだけなので、(詳細)の前の(..)は不要です。
結果はこのように出力されます。
テーブル1行がExcelの1行に固定したい場合などには便利です。右のセルに $IMG(添付ファイル)(1)、$IMG(添付ファイル)(2)と1つづつ追加していけば複数表示も可能です。
一覧画面からテーブル行を出力する場合
普通に出力
テンプレート例は次のようになります。
(タイトル)はテーブルの$FOREACHの外にあるので(..)は不要です。
結果はこのように出力されます。
テーブル外のフィールドも含めたい
テンプレート例は次のようになります。
テーブルの$FOREACHの中なので、詳細画面のときと同じようにフィールドコード指定の前に(..)を追加してください。
結果はこのように出力されます。
これによって、詳細画面のような出力が一覧画面で選択したレコードに対しても可能になります。
添付ファイルを別の行で全部出力したい
テンプレート例は次のようになります。
ややこしくなっているように思いますが、$FOREACHが3重になっているだけなので、1つ1つはシンプルだと思います。
結果はこのように出力されます。
添付ファイルを行別に全部出力した時にテーブル外のフィールドも含めたい
テンプレート例は次のようになります。
(タイトル)には今まで何度も出てきている (..) が複数指定されています。
このように、$FOREACHで展開されている場所を基準にしてフィールドを指定する必要があるので、値が空欄になる場合はアプリやフィールド構成についてご確認ください。
結果はこのように出力されます。
複数レコード分のテーブルをテーブル内外のフィールド値を組みあせて出力できますので、色々と便利な使い方ができると思います。
まとめ
テーブルの出力は$FOREACHで出来るのですが、フィールドコードの指定間違いなどで値が出ないことがあります。値が意図通りに出力されない場合はテンプレートの設定を確認するようにしてください。