カスタマイズ

検索条件でPDFを出力する

概要

テンプレートファイルとレコードの検索条件をもとに PDF ファイルを生成・出力します。

PDFを出力する」に比べてより多くのレコードを処理することができます。代わりに制限事項が多くなります。

使い方

事前にいくつかの準備が必要です。

gusukuのAPIキーが必要になります。この APIキーは kintone アプリの APIトークンとは異なります。gusuku の APIキーは gusuku 共通管理画面から発行・取得することができます。

テンプレートファイルを準備します。テンプレートファイルの作成方法については、Excel/PDF出力テンプレート リファレンスマニュアルのページをご覧ください。

また、テンプレートを保存するためのkintoneアプリも必要です。作成したアプリに添付ファイルフィールドを設置し、このフィールドに1テンプレートにつき1レコードになるようにレコードを作成しておきます。

Customineのカスタマイズでは、適用するテンプレートを保存したレコードを取得しておき、「検索条件でPDFを出力する」でテンプレートや出力レコードを取得するクエリなどをパラメーターとして設定します。

出力には時間がかかるため、出力処理中はダイアログが表示されます。出力が完了した時点でアクションが完了します。

設定するパラメーター

「gusuku APIキー」「データレコード取得アプリ」「データレコード検索条件」「テンプレートレコード」「テンプレートフィールド」「出力先」「ファイル名」を設定します。

gusuku APIキー

gusuku の APIキーを指定します。

kintone アプリの APIトークンのことではありませんので注意してください。

データレコード取得アプリ

出力したいデータをどのアプリから取得するかを選択します。

データレコード検索条件

出力したいデータを取得するための検索条件(クエリ)を入力します。

条件を「すべてのレコード」にすることも可能です。

並び順を指定することも可能ですが、指定しないほうが高速に処理できます。指定しない場合はレコード ID の昇順になります。

テンプレートレコード

テンプレートファイルの入ったレコードを選択します。

選択したレコードが実行時に1行もなかった場合はエラーになります。

テンプレートフィールド

テンプレートファイルの入った「テンプレートレコード」内の添付ファイルフィールドを選択します。

添付ファイルフィールドのみ選択可能です。テーブル内のフィールドは選択できません。

添付ファイルフィールド内にファイルが1つも添付されていない場合は、実行時にエラーになります。

添付ファイルのファイル拡張子が .xlsx である必要があります。それ以外の拡張子のファイルだった場合は、実行時にエラーになります。

出力先

生成したPDFファイルを出力する方法を選択します。

  • 「ブラウザーのタブ」…ブラウザーで新しいタブが開いてそこに表示されます。
  • 「ダウンロード」…ブラウザー上でファイルをダウンロードします。
    • アクションが完了する前にユーザーがブラウザーのタブを閉じてしまった場合は、ダウンロードされません。
  • 「添付ファイルフィールド」…生成したPDFファイルをkintoneへアップロードします。
    • アップロードした時点ではまだ実際にどこかのフィールドに保存されたわけではありません。「レコードを追加する」などのフィールドマッピングで、「=$1」等として「PDFを出力する」の結果をセットすることで添付ファイルフィールドにセットすることができます。
  • 「ブラウザーのタブとフィールド」…ブラウザーで新しいタブが開いてそこにPDFが表示され、同時にkintoneへもアップロードします。
  • 「ダウンロードと添付ファイルフィールド」…ブラウザー上でファイルをダウンロードし、同時にkintoneへもアップロードします。

ファイル名

ファイル名を入力します。

ダウンロード時の初期ファイル名や、添付ファイルフィールドのファイル名になります。

注意事項

  • gusuku のサーバーへの通信が発生しますが、この際の接続にはIPアドレス制限は適用されません。

  • データレコードの取得は、kintoneアプリでカスタマイズを実行しているユーザーではなく、CustomineまたはDeploitで行ったkintone接続設定におけるユーザーで行われます。レコード閲覧権限の差異には特に注意してください。アプリ実行中のユーザーには見えてはいけないレコードが、取得されてしまう可能性があります。

制限事項

  • 出力先に「ブラウザーのタブ」または「ダウンロード」が含まれる場合、ユーザーのブラウザーの設定でポップアップブロックが有効になっていると、カスタマイズからタブを開く操作がブロックされてしまいます。「ダウンロード」も別タブでダウンロードを行いますので、ポップアップブロックされるとダウンロードが行われません。ブラウザーの設定でポップアップを許可してください。

  • 出力処理が10分以内に終わらなかった場合はエラーになります。

  • PDFを出力する」にはない制限事項として、「検索条件でPDFを出力する」には以下の制限があります。

    • 出力するレコードを出力前に Customine で加工することはできません。
    • レコードの行番号アクセスやスライスには対応していません。例えば最初の10行だけ出力するために $FOREACH(0..9) というような記述はできません。
    • 検索条件に並び順指定があり、かつテンプレートでシート展開をしている場合、展開されたシートではメタデータを使用できません。
    • 検索条件で並び順を指定している場合、並列で10個以上同時に「検索条件でExcel/PDF/CSVを出力する」を実行することはできません。並び順を指定しない場合はこの制限はありません。
      • この制限がかかる理由は、レコードを取得する際に kintone のカーソルAPIというものを使用するためです。カーソルAPIの制限事項についてはCybozu のドキュメント も参照してください。