shikumika’s diary

日々の事務作業で手間なことを簡単にできる仕組み(自動化、方法など)、困ったことの解決方法を調べた備忘録

【kintone】申請時だけ必須チェックを標準機能で実現する方法の検討

kintone のフォーム設定にはフィールドごとに[必須項目にする]にチェックを入れると、値の入力を必須にできます。 しかし、オンにすると、当たり前ですが、そのフィールドが空のままでは保存ができないということになります。

データ管理に役立つ機能ですが、次のような現場のニーズとは正面衝突します。

  • 記入項目数の多いアプリでは「記入途中で一度保存しておきたい」
  • 一つのレコードを複数名で作成するので、入力者に応じて必須項目を変えたい

内容:

動作確認は、2026年5月時点のkintone(スタンダードコース)です。

そもそもなぜ「申請時だけ必須」が必要になるのか

冒頭で触れた「必須項目の設定」と「下書き保存のニーズ」の関係を、選択肢ごとに整理すると次のようになります。

設定 下書き保存 空欄申請の防止 導入ハードル エラーの明示
必須項目にする ○ 保存時に標準アラート
アクション実行条件を使う(本記事) 低〜中 ✕ 未入力の特定が難しい
JavaScriptカスタマイズ ○ 独自メッセージを設計可能

※ 専門プラグインを除く

「下書き保存」と「空欄申請の防止」を効果的に「両立できる」のは JavaScriptカスタマイズ、専門プラグイン となります。 ただし、まずは標準機能でどこまでできるかを把握したうえで、限界を感じたときにJavaScript等を検討するのが現実的な進め方です。本記事では標準機能のアプローチに絞ってまとめます。

標準機能での設定手順

プロセス管理の「アクション実行条件」を使うと、「この条件を満たしているときだけアクションボタンを表示する」という制御ができます。申請時に必須にしたいフィールドが空のときは申請ボタンを表示しない、という設定です。

これは、未完成のデータが次のプロセスへ誤って進んでしまうことを防ぐ安全装置として機能します。

前提:プロセス管理が有効になっていること

アクション実行条件はプロセス管理の機能です。まだ有効にしていない場合は、先にプロセス管理の設定を済ませてください。

プロセス管理の概要については、以下の公式ヘルプを参照してください。

出典:プロセス管理 | kintone ヘルプ

設定手順

  1. アプリの「設定」→「プロセス管理」を開く
  2. レコードのプロセスの設定で、「アクションが実行できる条件」を設定します。
     ・ 必須にしたいフィールドを選択し、条件を「空欄ではない」に設定する
     ・ 必須にしたいフィールドが複数ある場合は、「条件を追加」を繰り返してすべて登録する
  3. 条件の結合方法が「AND(すべての条件を満たす)」になっていることを確認する
  4. 「保存」→「アプリを更新」をクリックして変更を反映する

「アクションが実行できる条件」で申請時に必須にしたいフィールドが空のときは申請ボタンを表示しない、という設定です。
「プロセス管理」の設定例

標準機能(プロセス管理)で実施する方法の注意点

① 条件を満たさないと申請ボタンが「消える」

kintone の標準仕様として、アクションの実行条件を満たしていない場合、ボタンが画面から非表示になります。 エラーメッセージを出して止めるのではなく、そもそも画面から消えてしまいます。

ユーザー視点では次のような体験になります。

  • 「全部入力したつもりなのに、申請ボタンがない。システムが壊れた?」
  • どこが未入力なのかシステムが教えてくれないため、広い入力画面の中から空欄を自力で探すしかない
計算フィールドで、入力状況や警告メッセージを表示する

ボタンが消えることによる混乱を減らす方法として、文字列(1行)の計算フィールドを使って、画面上に疑似的な警告メッセージを表示するという方法も選択肢になります。

この方法を併用して、計算フィールドで「全項目の入力が済んでいるか」を0/1等で判定し、その値をアクション実行条件にするという方法も有効です。

また、最適な解決方法とはいえませんが、条件未達のレコードを自動で「未処理」ステータスに戻すフローを設計することはできます。ただし、申請者から見るとわかりづらいことに変わりはなく、事前にアプリの活用手順をユーザーに説明しておくことが重要です。

必須条件を満たしていないと、未処理に戻るだけのプロセスの設定例
実行条件を満たしていない場合に未処理に戻すプロセスの例

② 必須項目や条件が増えると設定の管理が手間になる

必須にしたい項目がシンプルで条件が少なければ対応できます。しかし項目や条件が増えると、アクション実行条件の設定が増えて管理しにくくなります。前述の計算フィールドによる判定はこの問題を緩和する一つの手段ですが、複雑な式の保守は困難です。

まとめ

  • フォームの「必須項目」設定は下書き保存ができなくなるため、申請ワークフローとは相性が悪い。
  • プロセス管理の「アクション実行条件」を使えば、標準機能だけで申請時の入力チェックは実現できる
  • ただし条件未達のとき申請ボタンが非表示になる、どこを直せばよいかの明示が難しいなどの課題もあるので、課題対応が必要な場合はJavaScriptカスタマイズ、専用プラグインが有効な選択肢**になる。

以上、kintoneで「申請時だけ必須チェックを標準機能で実現する方法」の備忘録でした。