ユーザー選択フィールドに一人だけ選べるように制御してみる

目次

はじめに

タスク管理やToDoなど、担当者を1名しか選べないように制御したいときはないでしょうか?
しかし、kintoneの標準機能では、基本的にユーザー選択フィールドは複数のユーザーを選択できてしまいます。

こんなときは、JavaScriptカスタマイズで解決していきましょう!

今回は、「ユーザーを1名のみ登録できる」カスタマイズを紹介します。

アプリの準備

それでは、今回利用するアプリを準備しましょう。

ユーザー選択フィールド以外のフィールドの配置は任意です。

フィールド名 フィールドタイプ フィールドコード
担当者
ユーザー選択
ユーザー選択

ポイント

ソースコードを書く前に、次のポイントを確認しましょう。

ソースコード

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
(() => {
  'use strict';
  const myEvent = ['app.record.create.submit', 'app.record.edit.submit', 'app.record.index.edit.submit'];
  kintone.events.on(myEvent, (event) => {
    // ユーザー情報を取得する
    const record = event.record;
    const selectedUsers = record['ユーザー選択'].value;
    if (selectedUsers.length > 1) {
      // 一人以上の指定の場合は、errorプロパティにメッセージを代入する
      event.error = '担当者は一人しか指定できません。';
    }
    return event;
  });
})();

動作確認

このソースコードを先ほど準備したアプリに適用します。
レコード追加画面、レコード編集画面、レコード一覧編集画面でそれぞれ、二人以上の担当者を指定して保存してみましょう。
エラーメッセージが出てきましたね。

いかがでしょうか。
簡単にできましたね。