本記事では、kintoneのデータを使って生成したPDFファイルをBoxに保存する方法についてご説明します。
D3Workerの以下のサービスを使用します。
- OPROARTS: kintoneから渡されたCSVデータを用いてPDFを生成します。
- Box [配送]: PDFをBoxに保存します。
kintoneアプリの用意
本記事では、ワークを呼び出すkintoneアプリに「見積」アプリを使用します。
テンプレートファイルがこちらのページからダウンロード可能です。(「サンプルアプリ」と書かれたリンクをクリックしてください)
見積アプリイメージ
帳票テンプレートの用意
OPROARTS Designerで帳票テンプレートを作成します。
今回は、標準で用意されているサンプルテンプレート「見積書3」を使用します。
本テンプレートは、以下のCSVフィールドを持ちます。
D3Workerの設定
サービス設定
「OPROARTS」を選択してサービスを作成します。
詳細はこちらの記事をご覧ください。
リンク先記事では「OPROARTS(別アカウント)」を使用していますが、設定は同様です。
次に、「Box [配送]」を選択してサービスを作成します。
各設定項目を指定し、サービスを保存します。
項目の説明を以下に記載します。
項目名 | 必須 | 内容 |
---|---|---|
名称 | ○ | サービス名称(ユニークな任意の名称)を入力します。 |
メモ | 必要に応じて、簡単なメモを入力します。 | |
Boxへの接続 | ||
一度サービスを保存すると、「接続」ボタンが有効になります。 「接続」をクリックして、Boxのアカウントでログインしてください。 |
||
接続情報 | ||
タイムアウト | ○ | D3Worker - Box間の接続・読込における、タイムアウトするまでの時間を指定します。 |
保存先フォルダ定義 | ||
保存先フォルダの指定方法 | ○ | ・フォルダID指定 ・フォルダ階層指定 のどちらかを選択します。 |
保存先フォルダID or フォルダ階層指定 | ○ | 「フォルダID指定」を選択した場合はフォルダIDを、「フォルダ階層指定」を選択した場合はフォルダ階層を「/」区切りで指定します。 |
ファイル定義 | ||
ファイルのコメント | ファイルにコメントを付与できます。 | |
ファイルの説明 | ファイルの説明を指定できます。 | |
ファイルの共有リンク定義 | ||
共有リンクの設定有無 | ○ | ファイルを共有するためのリンクを設定するかどうか指定します。 |
アクセスレベル | 共有リンクからファイルにアクセスできるユーザーを指定します。 ・リンクを知っている全員 ・会社のユーザー ・このフォルダ内のユーザー の3つから選択可能です。 |
|
共有リンクのパスワード | 共有リンクからファイルにアクセスするためのパスワードを設定します。 | |
共有リンクの有効期限 | 共有リンクの有効期限を指定します。 日付は、以下のフォーマットを使用してください。 ・YYYY-MM-DD ・YYYY-MM-DDThh:mm:ss+hh:mm ・YYYY-MM-DDThh:mm:ss-hh:mm ・YYYY-MM-DDThh:mm:ssZ ・YYYY-MM-DDThh:mm:ss.SSSZ ・YYYYMMDD ・YYYYMMDDhhmmss |
|
共有リンクのダウンロード権限 | 共有リンクからファイルを開いたときに、ダウンロードを許可するかどうか指定します。 | |
ファイルのメタデータ定義 | ||
項目名 | 保存するファイルに付与したいカスタム項目の名前を入力します。 | |
値 | カスタム項目の値を入力します。 |
エンベロープ設定
文書化サービスに「OPROARTS」を基に作成したサービスを指定します。
配送サービスに「Box [配送]」を基に作成したサービスを指定します。
ワーク設定
※本記事で扱う処理に必要な設定のみ記載しています。ワーク設定の詳細はこちらの記事の「D3Workerの設定手順」をご覧ください。
データソース: kintoneから受け取るデータのフィールドを定義します。kintoneアプリの各項目のフィールドコードと同じフィールド名を付けると、後の設定が楽になるのでおすすめです。
エンベロープ: 作成したエンベロープを選択し、「エンベロープフィールド」に帳票を区別するデータフィールド(ここではQuotation_Number)を、「アクティブ化するフィールド」にエンベロープフィールドを指定します。また「ELSEとして使用する」にチェックを入れます。
文書とデータのマッピング: 帳票テンプレートのCSVフィールドと、データソースのフィールドをマッピングします。
※kintoneアプリ「見積」には顧客担当者名を保持するフィールドが存在せず、帳票テンプレートの「CustomerCharge」フィールドに受け渡す値が無いため、ここでは3つ目のフィールドを固定値「ご担当者」にしています。
テンプレート名には"live_"を先頭につけて「live_{作成したテンプレート名}」と入れてください。
kintoneの設定
作成したワークをkintoneのレコード画面から実行するために、kintoneの設定をします。
アプリ、プラグインの追加
2つのZIPファイルをこちらのページよりダウンロードし、それらを基に「D3Worker Connector for kintone」のアプリとプラグインの両方をkintone組織に追加します。
アプリインストール
- アプリの追加>テンプレートファイルを読み込んで作成で「D3W Connector for kintone 1.0.0.2019.08.05.zip」を選択し、「アプリを作成」をクリックします。
プラグインインストール
- kintoneシステム管理>プラグイン>読み込むで「plugin_d3w_1.0.0.20191223a.zip」を選択し、「読み込む」をクリックします。
アプリの設定
D3W Connector for kintoneアプリを開き、以下のように設定します。
- アカウントの種類「ランタイム」と「管理者」の2つについて、以下の設定で1レコードずつ作成します。
D3WorkerのURL:https://d3w.ap.oproarts.com/d3w/api/xxxxxxx/
※xxxxxxxはお客様ごとのテナントになります。
ユーザ:D3Worker連携を行う、または管理するユーザ
UID、UPW:D3Worker用のUID、UPW
- アカウントの種類が「管理者」である方のレコード画面を開き、「D3Workerと同期」をクリックします。
- アプリ設定の「追加」をクリックし、項目を利用したいアプリのIDを指定します。
- 「追加」をクリックすると列が追加されますので、利用するワークを指定します。
※先にD3Workerの設定を行っていないとワークに表示されません。
- 送信フィールド マッピングのマッピングをクリックするとD3Workerのデータソースとkintone項目のマッピング画面が表示されます。
- データソースとkintoneアプリの項目の紐づけを行います。
kintoneアプリのフィールドコードとワークのデータソースフィールド名が同じであれば、「自動マッピング」をクリックすることで項目が自動で紐づけられます。
図では、データソースの「Quotation_Number」にkintoneアプリの「Quotation_Number」が、
「Customer_Name」にkintoneアプリの「Customer_Name」、、、、、、のように設定されております。
※サブテーブル、もしくは関連レコードを明細として利用する場合は「送信フィールド(サブテーブル/関連レコード) マッピング」をご利用ください。
- 設定が完了したら「保存」をクリックして設定を保存します。
プラグインの設定
- D3Workerと連携をしたいkintoneアプリの設定>プラグイン>プラグインの追加でD3Worker Connector for kintoneを選択し、「追加」をクリックします。
- D3Worker Connector for kintoneの設定から設定画面を開きます。
- 「OPROARTS Connector for kintone を選択」で先ほど設定したD3Worker Connector for kintoneを選択します。
- 「ボタン設置設定」の「追加」をクリックし、先で作成したボタンを指定します。
- ボタンの追加が済んだら「保存」をクリックします。
- アプリ設定画面で「アプリの更新」をクリックします。
実際の流れ
以上を設定したら、ボタンを設置したアプリのレコード画面でボタンをクリックします。
Boxの画面に移ると、PDFが保存されていることが確認できます。
おわりに
D3Workerを用いてPDF作成からBoxへのPDFアップロードまでのプロセスを自動化することで、kintoneのデータを用いて生成したPDFファイルを容易に管理できるようになります。
本記事がD3WorkerとBoxを連携する際の参考になれば幸いです。