見出し画像

[kintone] FormBridge回答者ごとに回答数をカウントする

関西でコーポレートエンジニアをやっている「ながの(仮名)」と申します。
トヨクモ kintone連携サービス Advent Calendar 2024 16日目を担当します🙌



note、書いたことありますか?

この記事を読んでくださっている あなた、
noteを書いたことはありますか🐱?

noteで記事を公開すると、
以下のような励ましのメッセージが表示されます。

● 初投稿! ナイスチャレンジ!
● 2回目の記事投稿、おつかれさまでした!
● 記念すべき10回目の記事ですね! 継続が素晴らしい!

記事公開後に表示されるメッセージ(イメージ)

いずれのメッセージも、これまでの投稿回数が引用されていますね。

実現したいこと

FormBridgeで、次の2つを実現したいと考えました。

1.同じ人から複数回答があった場合に、
  回答者ごとに回答数をカウントしたい。


2.回答完了画面に表示するメッセージについて、
  「ご回答ありがとうございます!」がデフォルト設定されているが、
  回答者の回答数に応じたメッセージを表示したい。

● 初めての回答なら
 → 初回答! ナイスチャレンジ!
● 2回目以降の回答なら
 → ◯回目の回答、おつかれさまでした!
● 回答数が10の倍数なら
 → 記念すべき◯回目の回答ですね! 継続が素晴らしい!

回答完了画面に表示したいメッセージ


設定方法 
1.回答者ごとに回答数をカウント

FormBridgeのkViewerルックアップを利用します。

設定イメージ

① kintone

 ・kintoneアプリを作成する。

② kViewer

 ・①のアプリを対象に、kViewerの外部公開APIを作成する。
 ・公開情報に「回答者ID」「回答数」を指定する。
 ・レコードの並び順に「レコード番号」「降順」を指定する。
 ・1リクエストでの取得数に「1」を指定する。

③ FormBridge

 ・①のアプリを対象に、FormBridgeを作成する。
 ・②で作成したkViewerルックアップを配置し、
  検索対象となるフィールドに「回答者ID」を設定する。
  選択された「回答者ID」に紐づく「回答数」を、
  FormBridgeの数値フィールド「前回までの回答数」に反映する。
 ・数値計算フィールドを配置する。
  計算式に「#前回までの回答数 + 1」を指定し、
  保存先フィールドに「回答数」を指定する。
 ・フォームURLの末尾に
  「?kViewerルックアップのフィールドコード=回答者ID(※)」を
  付与した状態で、回答者にフォームURLを配布する。
  これにより、回答者がURLをクリックしたタイミングで、
  kViewerルックアップが自動的に選択済の状態になる。
 ・回答者がkViewerルックアップの選択値を変更できないよう、
  kViewerルックアップなどの各項目を非表示にする。


(※)以下記事を参考にしました。
カスタマイズ不要!フォームのURLごとに回答を判別する方法

設定方法 
2.回答数に応じた回答完了メッセージを表示

設定イメージ

① フォームのデザイン

 ・回答数が10の倍数であるかを判定するための
  数値計算フィールドを配置し、計算式に「回答数%10」を設定する。
  関数の説明については、操作ガイドを参照。
 ・メッセージを保存する文字列(1行)フィールドを配置する。
 ・上記フィールドをすべて非表示にする。

② 回答保存プロセス

 ・数値計算プロセスにて、
  数値計算フィールド「回答数」と「回答数を10で割った余り」を
  数値フィールドに保存する。(数値計算フィールドのままでは、
  後続の文字列連結プロセスの実行条件に指定できないため。)
 ・文字列連結プロセスにて、「回答数を10で割った余り」が
  0の場合、以下メッセージを保存する。

記念すべき #回答数_数値 回目の回答ですね! 継続が素晴らしい!

 ・文字列連結プロセスにて、「回答数を10で割った余り」が
  0でない場合、以下メッセージを保存する。

#回答数_数値 回目の回答、おつかれさまでした!

 ・文字列連結プロセスにて、「回答数」が1の場合、
  以下メッセージを保存する。

初回答! ナイスチャレンジ!


③ 回答完了画面

 ・メッセージフィールドを表示設定する。

できました🥳

初めての回答
2回目の回答
10回目の回答


類似記事の紹介

FormBridgeにおいて、今年 自分なりに試行錯誤した類似記事を紹介します。

[kintone] FormBridgeの前回回答日を登録する


[kintone] FormBridge回答完了メッセージをランダム表示する


さいごに

ここまで お読みいただき、ありがとうございました🙌
トヨクモ kintone連携サービス Advent Calendar 2024、明日は 電脳坊主 / 植田剛士 さんです!


いいなと思ったら応援しよう!