gusuku Customine カスタマインの歩き方 Excel/PDF 出力編
2. 実例に学ぶカスタマイズ作成のポイント

2-5. PDFで複数ページ出力する時の出力範囲指定

前の記事:2-4. Excel/PDF出力で同じレコードのデータを複数の形式で出力

次の記事:2-6. 関連レコード一覧で紐つく複数アプリのレコードを併せて出力


はじめに

この記事では、kintoneアプリカスタマイズのやること「PDFを出力する」や、Job Runnerのやること「PDFを出力する」を使ってPDF出力を行う際の、出力範囲指定についてご説明します。


明細行の多いPDF出力を行った場合

詳細画面からのPDF出力の「御見積書テンプレート」を使用して見積明細行が多い見積を出力した場合、出力は次のような形になります。

この出力内容ですと2ページ目以降には表のヘッダ部となる明細項目名が表示されないため、見づらくなってしまいます。


上記のような問題を解消する方法として、Excelのヘッダ機能を使用します。この機能を使用した「sample_御見積書テンプレート_ヘッダ」は以下のような形で出力されます。


このように、改ページを検討した上での表の出力はExcelのヘッダ機能を利用すると見やすくなります。


上記とは別の要件として、「備考」は見てもらいやすいように1ページ目にのみ出力し、残りの明細行は2ページ目以降に全て出力したいということもあると思います。

この場合は、出力する行を指定して制御することで実現が可能です。

行指定を行った「sample_御見積書テンプレート_行指定」は以下のような形で出力されます。



ここでは明細行の後に「備考」を出力したいので、出力する明細行の範囲を指定します。

※1ページ目に何行分印字することができるかは、テンプレートの行幅指定やフォーマットにより異なるため、実際に出力していただき指定行数を調整してください。


出力する行の範囲を指定する方法

テーブルに登録されている行数分を繰り返して出力するために、$FOREACH(テーブルのフィールドコード)および $ENDを使用します。今回は、1ページ目に明細行を20行分出力し、2ページ以降には21行目以降を出力するテンプレートを作成します。


$FOREACH部分を以下のように記述することで、1行目から20行目までを明示的に指定して出力することが可能です。

(1ページ目の記述)

(2ページ目の記述)

「..」の前後に数字を指定することで、どの行を出力するか制御することができます。数字を指定しない場合は、「全て」という意味になります。

今回の例ですと「(0..19)」の部分は、「0」が1行目、「19」が20行目を示しており、「(20..)」の部分は21行目以降の全てを指定する記述となります。

※この出力する範囲を指定する機能をスライスと呼びます。

このスライスはテーブルや関連レコードだけでなく、チェックボックスやユーザー選択など複数の値を入力できるフィールドで使用できます。

使用可能なフィールドについては、「Excel/PDF出力テンプレート リファレンスマニュアル」をご確認ください。


はじめに

この記事では、kintoneアプリカスタマイズのやること「PDFを出力する」や、Job Runnerのやること「PDFを出力する」を使ってPDF出力を行う際に、スライスの機能を利用することで、自在に出力範囲を制御することができる事をご説明しました。


ぜひExcel/PDF出力についても、色々と試してみてくださいね。


ご不明な点がございましたら、チャットでお問い合わせください。

ドキュメントサポートページも、ぜひご活用ください!


gusuku Customine カスタマインの歩き方 Excel/PDF 出力編
2. 実例に学ぶカスタマイズ作成のポイント

2-5. PDFで複数ページ出力する時の出力範囲指定

前の記事:2-4. Excel/PDF出力で同じレコードのデータを複数の形式で出力

次の記事:2-6. 関連レコード一覧で紐つく複数アプリのレコードを併せて出力