本記事では、PowerPointテンプレートとViewFramer を使用して、kintoneからPowerPoint帳票を出力する方法を掲載しています。
この記事の例では、kintone公式アプリテンプレートの「目安箱」アプリを元に、お客様からweb経由で頂いたご意見に回答を書く、というkintoneアプリを設定しました。
元のテンプレートは「内容」に質問のみがありますが、「回答」という複数行フィールドを追加して、お客様からの目安箱への投稿に、スタッフから回答を入力できるようにしました。
また、「公開可」にチェックを入れることができるチェックボックスも追加しています。
この質問と回答を、施設の受付ボードに印刷して掲示する…という設定のスライドを作成していきます。
レコード一覧画面でボタンを押すと、スタッフが回答作成済みで、かつ「公開可」にチェックを入れてお問い合わせしてきたものをスライドに出力する、というPowerPoint帳票を作ります。
雛形をPowerPiointで用意しました(本記事の最下部にも添付しています)。
表紙スライドと、Q&Aの2スライドのみの構成です。
このファイルをテンプレートとして設定していきたいと思います。
1.アドイン設定
アドイン「Document Designer for Office 」を入れます。
「挿入」タブの「アドインを入手」からアドインストアを開き、「OPRO」と検索すると出てきますので、追加します。
追加すると「挿入」タブにこのアドインのアイコンが表示されますので、クリックします。
アドインのスタート画面が開きますので、「OPROARTS」の方を選びます。
2.タグの設定
(1)明細部のフィールド設定
OPROARTSの他の帳票を作成したことがある方は既にご存知かもしれませんが、OPROARTSのテンプレートでは、「明細になる部分」と「明細以外の部分」の設定を分けて定義します。
ただし、今回はレコード一覧画面でボタンをクリックして、そのkintoneアプリのレコードを明細として出力する「一覧型」帳票です。
そのため、「明細になる部分」のみを作成します。
表紙に「出力日」を、Q&Aスライドに「タイトル」「投稿内容」「回答内容」を出力したいと思います。
「フィールドの追加」欄に「出力日」「タイトル」「投稿内容」「回答内容」を入力して、「+」をクリックするとフィールドが作成されます。
以下の画像のように、「、」(句点)やカンマ・タブ区切りで複数のフィールドを一括追加できます。
全て文字列型のフィールドとして作成されますが、「出力日」は文字列ではなく「日付」に変更します。
「出力日」の部分をクリックして、出力書式を好きな形式に変更します。
この「出力日」を、1つ目のスライドのサブタイトル部分に出力したいため、テキストボックスにカーソルを入れて、作成した「出力日」フィールドの横の鉛筆ボタンをクリックします。
下図のようにタグが入ります。この部分に出力ボタンをクリックした日付が出力されるようになります。
2つ目のスライドにも、kintoneのデータを出力したい部分にカーソルを入れて、「タイトル」「投稿内容」「回答内容」の鉛筆マークボタンをクリックして、それぞれタグを入れます。
(2)スライドの複製の設定
この2枚目のスライドは、kintoneの1レコード = 1スライド で出力したいため、kintone側にレコードが沢山ある場合は自動的にスライドをコピーして増やす、という設定にします。
PowerPointの2スライド目の、何もないところをクリックして、パーツを選択していない状態にします。
アドインのテーブルタブを開いて、「定義を追加」をクリックします。
追加された定義の鉛筆マークをクリックします。スライドの真ん中に「${{"repeatId":1}}」というタグが出力されるので、端によけておきます。
これでテンプレートの設定は完了です。
このPowerPointファイルを保存して、デザイナーにアップロードします。
アドインのアップロードタブを開いて、「アップロードフォームを開く」をクリックします。
OPROARTS Designerにアクセスし、新規作成メニューが開きます。
テンプレート名を付けて先程保存したPowerPointファイルを添付し、「作成」をクリックします。
※普段通りkintoneの「OPROARTS Connector」からスタートボタンをクリックしてデザイナーに移動し、「新規作成」>「PowerPoint」>「マッピング済みファイルアップロード」でも同じアップロードメニューを開くことができます。
テンプレートが生成されたら「配備」をクリック→もう一度「配備」をクリックして、テンプレートをOPROARTSサーバに配備します。
後はViewFramerで、kintoneのどのアプリのどのフィールドをこのテンプレートに渡すかを設定します。
この記事はViewFramerの記事ではないので、簡略化していきます。
基本的な使い方は、以下の記事や無償のセミナー(応用編)でも紹介していますので、そちらでご確認ください。
記事:【TECH COLUMN】ViewFramerの基本的な利用方法(kintone) ~kintoneの複数アプリを使って帳票出力~
セミナー:https://event.opro.net/?f1=seminarWithHandsOn&r1=salesforce
【ViewFramerの準備】
以下の画面からCID/UID/UPWを入力してログインします。
https://vfui.ap.oproarts.com/view_framer_ui/
「認証設定」タブでkintoneの認証情報・スペースを入力して、使用したいkintoneアプリ「目安箱」のAPIトークンを登録します。
【ビュー作成】
「目安箱」アプリの、「対応済み」かつ「公開可」にチェックが入っているレコードを取得する、というビューを作成します。
①リレーション設定で、主オブジェクトを「目安箱」にします。関連オブジェクトの設定は、他のアプリを使用しないため今回は削除します。
②出力項目設定で、出力項目名に「タイトル」「投稿内容」「回答内容」(PowerPointテンプレート側で作成したフィールド名)を追加します。
それぞれに「目安箱」アプリの「タイトル」「内容」「回答」フィールドを紐づけます。
③出力項目設定で、出力項目名「出力日」を追加して、以下の関数を設定します。この関数は、帳票出力した日付を出力することができます。
TODAY()
④出力条件設定で、対応ステータスが「対応済み」で、「公開可」にチェックが入っているもの、という式を追加します。
対応ステータス いずれかと等しい(IN) 固定値 '対応済'
公開 いずれかと等しい(IN) 固定値 '公開可'
【マッピング作成】
マッピングを新規作成して、タイプは「一覧型」を選択します。
明細データで作成したビューを選択して、「取得」をクリックして「次へ」で進みます。
「Documentizer」タブを開き、配備したPowerPointテンプレートを選びます。
「自動マッピング」をクリックして、テンプレートのフィールドとビューのフィールドを紐づけます。
「配備」をクリックして、ViewFramerの設定完了です。
【ボタン作成】
kintone画面上に、作成したマッピングを使用して帳票生成するボタンを設置します。
以下のページのViewFramer用プラグインを導入しておきます。
kintoneのボタンを設置したいアプリの「設定」 を開き、「設定」タブの「プラグイン」を選び、ViewFramerプラグインを追加します。
プラグインの設定を開いて、ViewFarmer Connector for kintoneが選択されている状態でボタンの「追加」をクリックし、作成したマッピングを選びます。
追加されたマッピングの「編集」をクリックして詳細設定を開き、出力形式を「PowerPoint[DDO]」に変更してください。
アプリ設定を更新すると、レコード一覧画面にボタンが表示されています。
ボタンをクリックして、一回の出力で複数のスライドが出力できました。
PowerPointということで色々な表現ができると思います。企画書・日時や週次の報告書など、ぜひご活用ください。