フォームブリッジ、kViewer、データコレクトを連携し、カレンダーから日付を選択して予約・申込みができ、さらにリアルタイムで申込数・残り席数を確認できる予約システムを作成します。
この記事では、データコレクトを使った予約残数の計算方法を説明します。
今回の設定で、必要なkintoneアプリは以下2つのアプリです。
1.フォームブリッジとkViewerを連携し、画像のような予約システムを作成します。
予約システムの作成方法については、【フォームブリッジ×kViewer】予約管理システムで、データを保持して別のアプリに情報登録するをご確認ください。
2.日程管理アプリの「フィールド式」をクリックします。
2-1.「アプリ」でセミナー申込管理のアプリを選択します。
点線内の行をクリックすると、フィールドを参照することができます。
2-2.計算した値を反映させたいフィールドに式を設定します。
今回は、セミナー日程管理アプリに式2つの式を設定します。
まずはCOUNTIFSを使い、「申込数」に
①セミナー申込管理アプリの「参加/不参加」フィールドの値が「参加」で、かつ
②セミナー申込管理アプリの「開始日時」と
③セミナー日程管理アプリの「開始日時」が一致しているレコード数を合計する
という式を設定します。
申込数
= COUNTIFS(セミナー申込管理!参加_不参加,"参加",セミナー申込管理!開始日時,開始日時)
COUNTIFS(範囲1, 検索条件1, [範囲2, 検索条件2, ...])
・範囲1 - 検索条件1に対して検証する範囲です。
・検索条件1 - 数値や文字列で指定します。
・範囲2, 条件2, ... - [省略可]検証対象となる追加の範囲と検索条件です。
3.次に「残り枠」に、「参加上限人数」から「申込数」を引く式を設定します。
残り枠
= 参加上限人数-申込数
4-1.セミナー日程管理アプリに自動更新の設定を追加します。
今回は「セミナー申込管理アプリ」のレコード追加と更新のタイミングで、開始日時が一致した「セミナー日程管理アプリ」のレコードが更新されるよう設定を行います。
設定を入力したら保存をクリックします。
4-2.Webhookをコピーし、kintoneの入力元アプリ(今回の場合はセミナー申込管理アプリ)に設定します。
「通知を送信する条件」は、5-1で自動更新の設定を追加した時と同じものにチェックを入れます。
保存すると、指定したタイミングで自動でデータが更新されるようになります。
5.kViewerの「レコードの絞り込み/並び替え」で「残り枠」が0より大きい場合のみビューに表示させるという設定にします。
この設定を行うことで、残数が0より小さい場合にはkViwerで表示しないことが可能です。
以上で設定は完了です。