2024/12/11 10:00
初めて投稿させていただきます。
同一レコード内に複数存在するユーザー選択フィールド間での重複をチェックする方法はないでしょうか。
「登録者」が「同行者」(複数選択の場合もあり)を登録して「承認者」へ申請する2段階のシンプルなフローで、承認者は登録者、同行者とは重複してはいけないというルールです。ところが、ルールを知らずに同行者と承認者が重複したまま申請するケースが多発しています。「承認者」が「登録者」もしくは「同行者」と重複しているとき、なんらかのエラー表示などをできないかと考えております。
対策できそうに思えるのですが、私はKintone初心者で、なかなか情報を見つけることができません。皆様のお知恵を拝借したく、よろしくお願いいたします。
ミュートしたユーザーの投稿です。
投稿を表示TISさんの「条件分岐処理プラグイン」
https://www.tis2010.jp/branchprocess/
https://kintone.tis2010.jp/docs/plugins/branchprocess/ja/
だけで、動作確認しました。
(文字結合プラグインは不要になりました)
他の方も別手段で解決されているようですが
一応、設定情報の画像添付します。
※自動入力の計算式【画像の赤文字部はフィールドコードです】
① TO_STRING("登録者")+TO_STRING("同行者")
② IF(LIKE("結合",TO_STRING("承認者")),"重複してます→","")
追記
デフォルトの「プロセス管理」を利用すれば
出来る様な気もするのですが???
使用したことがないので今度確認してみます。
追記2
「プロセス管理」だけでは無理そう
結局、TISさんの
「ステータス連動必須フィールド設定プラグイン」
が必要みたいです。
ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示有償プラグインになりますが、項目検証プラグインで複数のユーザー選択間の重複チェックを行うことが出来ます。
ご参考になれば
rex0220 項目検証プラグイン ユーザー選択間の重複チェック2
https://qiita.com/rex0220/items/a1bca640083e103f3091
ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示登録者、同行者、承認者 がすべてユーザー選択フィールドだったとして
TISさんの 条件分岐処理プラグイン を使ってやってみます
▼フォーム
ユーザー選択フィールドを3つ
登録者、同行者、承認者
文字列1行フィールドを3つ
ユーザー選択フィールドで選択した内容の転記先
数値フィールドを2つ
重複しているかどうかを入れる
数値フィールド
承認者数を入れる
文字列1行フィールド
自動計算でエラー内容を表示する
数値フィールド
プラグインの動作条件(初期値を1にしておき、このフィールドが1だったら動作させる)
▼プラグイン設定
動作条件
数値 等しい 1
自動入力
登録者 :"登録者選択"
同行者 :"同行者選択"
承認者 :"承認者選択"
承認者数 :IF("承認者"="",0,IF(LIKE("承認者",","),2,1))
登録者と承認者:IF(AND(LIKE("登録者","承認者"),"承認者数"=1),1,0)
同行者と承認者:IF(AND(LIKE("同行者","承認者"),"承認者数"=1),1,0)
「レコード保存時にも実行する」をオン
動作条件で、いつも動作するようにするのがよく分かんなくて
上記のようにしましたが、いい方法があるでしょうかね。。。
また、
プロセス管理で、アクションが実行できる条件を
エラー =等しい (空欄)
にしておくと、エラー表示があるレコードでは処理開始ボタンが現れないようになります
ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示自習・リマインドかねて試してみました。
同行者がテーブルになっている前提です。
●メッセージをテーブル内/同一行に表示させたい場合
(1)氏名の横にメッセージ用として文字列(1行)フィールド追加
(2)追加したフィールドの設定で、[自動計算する]にチェックマーク
(3)[計算式]に以下記入
IF(氏名=登録者,"登録者と重複しています。重複しない方に変更するか、この行を削除してください。","")
(4)[計算式を表示しない]はお好みでチェックマーク
(5)アプリに適用
●メッセージがテーブル外表示でよい場合
(1)メッセージ用としてテーブル外に文字列(1行)フィールド配置
(2)追加したフィールドの設定で、[自動計算する]にチェックマーク
(3)[計算式]に以下記入
IF(CONTAINS(氏名, 登録者),"登録者が重複登録されています。当該氏名を重複しない方に変更するか、行を削除してください。","")
(4)[計算式を表示しない]はお好みでチェックマーク
(5)アプリに適用
※例のため、氏名欄は文字列(1行)フィールドを使用しています。
※便宜上、フィールド名=フィールドコードとしています。
※表示メッセージはお好みで
こんなのはいかがでしょうか。
ご参考になれば幸いです。
ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示