kintoneを使ってイベントの参加人数を管理するような場合、ラジオボタンで人数を選択させているケースは無いですか?

ラジオボタンを使うと入力の手間が省けて大変便利ですが、ラジオボタンで入力した値はグラフで使う事ができないため、集計ができないデメリットもあります。


そこで今回は、ラジオボタンで選択された項目を「数値」として集計し、グラフでも利用できるようにするカスタマイズを作成していきたいと思います。


Customineの基本的な事柄は、こちらの「はじめてのカスタマイズ」をご参照ください。


利用想定シーン


イベントに参加する大人・子供別の人数と合計人数を管理することを想定して、それぞれのラジオボタンで選択した項目(人数)を集計し、「数値」フィールドにセットするカスタマイズを作成します。

また、カスタマイズ作成後に参加イベントごとの人数をグラフで表示するため、参加イベントをチェックボックスで設定します。


 例)ラジオボタン「大人」2人、「子供」3人を選択した場合、「合計」に5人とセットされる


※人数を数値として集計するため、ラジオボタンの選択肢に設定する数字は『半角』で入力する必要があります。


アプリのフォームは以下の通りです。



フィールドコードは以下の内容で設定します。

  •  「大人」(ラジオボタン):大人ラジオボタン
  •  「子供」(ラジオボタン):子供ラジオボタン
  •  「合計」(数値):合計




Customineの設定


以下の流れでカスタマイズを作成していきます。

  1. ラジオボタンの選択項目を数値として集計し、別のフィールドにセットする
  2. フィールドを無効化する


1. ラジオボタンの選択項目を数値として集計し、別のフィールドにセットする


今回のカスタマイズ作成のメインである、ラジオボタンの選択項目を数値として集計するカスタマイズを作成します。

ここでポイントになるのは、「値」の設定では『フィールドコード』を使用すること、「=,+」などの記号は『半角』入力することです。


手順は以下の通りです。

  • 「やること」でカテゴリー:フィールドの中から「フィールドに値をセットする」を選択します
  • 「フィールド」には「合計」を選択します
  • 「値」には「=大人ラジオボタン+子供ラジオボタン」を入力します
  • 「条件」には「フィールドの値を編集して値が変わった時」を選択します
  • 「フィールド」には「大人,子供」を選択します
  • 「一覧画面の鉛筆を押した時」は「一覧画面の鉛筆を押した時も含める」にしておきます


最終的には以下の設定になります。



ここまでのカスタマイズで、ラジオボタンの選択項目を変更した場合のみ集計が行われます。

つまり、ラジオボタンの選択項目を初期値から変更しないと集計されない事になります。

今回のラジオボタンの初期値は大人・子供ともに「1」人ですので、『レコード追加画面・編集画面を表示した時』にも集計結果がセットされるカスタマイズを作成する必要があります。


手順は以下の通りです。

  • 「やること」でカテゴリー:フィールドの中から「フィールドに値をセットする」を選択します
  • 「フィールド」には「合計」を選択します
  • 「値」には「=大人ラジオボタン+子供ラジオボタン」を入力します
  • 「条件」には「追加画面・編集画面を表示した時」を選択します
  • 「一覧画面の鉛筆を押した時」は「一覧画面の鉛筆を押した時も含める」にしておきます



2. フィールドを無効化する


合計をセットするフィールドを無効化することで、手入力を禁止し、集計した結果以外が入力されることを防ぎます。


手順は以下の通りです。

以下のような設定になります。



以上でカスタマイズは完了です!


「kintoneアプリへ登録」し、ラジオボタンの選択項目が集計されるかを確認してみてください。

また、これまで利用できなかったラジオボタンの集計(グラフ)も以下の通り利用することができます。



まとめ


今回はラジオボタンの選択項目を数値として集計するカスタマイズをご紹介しました。

ラジオボタンのデメリットであった集計(グラフ)が利用できることで、よりラジオボタンの使用幅が広がるのではないでしょうか。

今回は加算しましたが、減算や乗算なども可能です。簡単なカスタマイズで自動的に計算し表示してくれるのは有り難いですね。


更に、今回のカスタマイズは、様々なフィールドで同一の内容を表示する、いわゆるコピー機能としても活用できます。

例えば、商品名を別の「文字列(1行)」フィールドに表示したり、日付を別の「日付」フィールドに表示させることができます。

業務に合わせた、カスタマイズをして頂ければと思います。