kintoneと連携したモバイルアプリをUnifinityで作成する方法について、ご紹介いたします。
今回は、kintoneのREST APIを利用して、kintoneのワークフローを進める方法をご紹介します。
前回の記事で紹介したユーザー認証は必要となりますので、適宜ご確認ください。
解説で使用しているkintoneのアプリ・Unifinityのサンプルプロジェクトを以下よりダウンロードすることができます。ぜひご活用ください。
【kintone】ワークフロー承認アプリ
【Unifinity】kintoneワークフロー承認アプリ
作成するアプリの概要
kintoneに、登録済のレコードのプロセス(ワークフロー)を進めるモバイルアプリを作成します。
kintoneの設定
今回は、下記のように文字列を登録するアプリを用意します。
ワークフローを進めるアプリを作るので、kintoneのアプリには何等かのレコード登録をkintoneからお願いいたします。
その上で、アプリの設定>プロセス管理から、以下の赤枠部分を参考にワークフローを設定してください。オレンジ枠部分は、Unifinityの設定で必要となりますので、ご確認ください。
また、連携するためには、kintoneのサブドメイン名・アプリID・各フィールドのフィールドコード・プロセス管理のアクション名(上記オレンジ枠)が必要となります。
・ サブドメイン名・アプリIDは、アプリ接続時のURLの以下の部分から確認できます。
・各フィールドのフィールドコードは、アプリの設定画面から確認できます。
Unifinityの連携設定
画面作成・処理作成を説明していきます。
※ 基本的なUnifinityの操作は、こちらのチュートリアル動画をご覧ください。
0. 準備
前回の記事で紹介したユーザー認証をアプリ内にご準備ください。
また、kintoneの設定で確認したサブドメイン名を、プロパティのグローバル変数に設定します。
1. 画面作成
ワークフローを更新するためには、対象のレコードID・プロセスのアクション名・変更先のステータスの作業者を設定する必要があります。実際に運用する場合、ユーザーに直接入力させることはないかと思いますが、今回はサンプルなので画面で入力するようにしています。
① レコードIDを入力するテキストボックスを配置します。
② プロセスのアクション名を選択するコンボボックスを配置します。
また、コンボボックスの選択肢を設定するために、データののリストタブの中にある値入力部分に、kintoneのプロセスのアクション名(上図オレンジ枠部分)を入力してください。
③ 変更先のステータスの作業者を入力するテキストボックスを配置します。
ここには、作業者のログイン名を入力する必要があります。また、その後のプロセスが無い場合(今回だと完了するを選択した場合)には、こちらは空欄とする必要があります。
④ 入力された情報を、kintoneに送信するためのボタンを設置します。
画面作成は、一旦、これで完了です(2.の処理作成後、更新する箇所があります)。
2. 処理作成
画面で作成したボタンを押下した際の動作を作成します。
それぞれの項目ごとに、一つ一つの処理を解説していきます。
① サブドメイン名の呼び出し
#2 | 「変数/グローバル変数取得」を使って、グローバル変数に設定したkintoneのサブドメインを読み込みます。 |
② ユーザー認証情報の呼び出し
#4 | 「データベース/取得」を使い、DBに記憶された「ユーザー認証情報(X-Cybozu-Authorization:●●●)」を読み込みます。(0. 準備で記載したユーザー認証をアプリ内にご準備いただき、そちらのDBを指定してください) |
③ kintoneに送信するためのフォーマットへ、データを整形
kintoneにデータを登録するにあたっては、kintone側が定めるフォーマット(今回はこちら)にデータを整形することが必要です。
以下のようなフォーマットへの整形が必要となり、その方法を以下でご紹介します。
#6~8 | 「コントロール/内容取得」を使って、画面に入力された内容を選択します。 |
#9 | 「ディクショナリー/作成」を使用して、整形していきます。 {"app": "(アプリのID)","id": "#6","action": "#7","asignee": "#8"}とするため、以下のように選択してください。 ※アプリIDは空欄としていますが、入力が必要です |
#10 |
最後に、整形した要素をJSONフォーマットに加工します。 |
④ kintoneへのデータ送信
kintoneにデータを登録するにあたっては、kintone側が定めるURI(今回はこちら)にデータを送信することが必要です。
#13 | 「文字列関数/連結」を使い、kintoneで決められているRESTAPIのURI(https://(サブドメイン名).cybozu.com/k/v1/record/status.json)を生成します。 今回は、サブドメイン名を呼び出した#2の内容と「/k/v1/record/status.json」とを連結しています。 |
#14 |
「ネットワーク/HTTPリクエスト」を使い、kintoneにデータを送信します。 |
3. 紐づけ
あとは画面と処理を紐づけていただいて完了です。
次回は、kintoneのレコードを取得するアプリの作成方法をご紹介します。
なお、今回の解説で使用したkintoneのアプリ・サンプルプロジェクトは、以下よりダウンロードすることができます。
【kintone】ワークフロー承認アプリ
【Unifinity】kintoneワークフロー承認アプリ