組合せ且つ条件有りでの重複チェックについて

【したいこと】

・コンボボックス+ルックアップの組み合わせで、且つ、コンボボックスが特定の値の時のみ、ルックアップの値で重複チェックがしたい。

(イメージ)ステータス(未着手、作業中、完了)+商品コードで完了以外の時に、レコードの商品コードが重複しないようにチェックをする。

【したこと】

①チェック用のテキストボックスを重複不可で作成する。

②ルックアップで①のテキストボックスに商品コードを挿入する。

(ルックアップではapp.record.create.change.オブジェクト名のイベントが発生しないため)

③app.record.create.change.オブジェクト名のイベントが発生したら、コンボボックスが”完了”以外の時に①のテキストボックスに商品コードを保持する。

【できないこと】

編集画面では期待した動作が得られたのですが、一覧画面での編集時に重複チェックが行われませんでした。

コンボボックスのapp.record.index.edit.change.オブジェクト名のイベントが発火していましたが、チェック用のテキストボックスの値が更新されませんでした。

おそらく、チェック用のテキストボックスがルックアップのコピー先となっており、一覧画面だとテキストボックスではない状態なので、値が更新できないのではないかと思います。

var events重複チェック = [“app.record.create.change.ドロップダウン_0”,
“app.record.edit.change.ドロップダウン_0”,
“app.record.index.edit.change.ドロップダウン_0”,
“app.record.create.change.商品販売コード_重複チェック用”,
“app.record.edit.change.商品販売コード_重複チェック用”,
“app.record.index.edit.change.商品販売コード_重複チェック用”];
kintone.events.on(events重複チェック, function(event) {
var record = event.record;
var str商品販売コード_重複チェック用=“”
str商品販売コード_重複チェック用=record.販売商品コード.value
if (record.ドロップダウン_0.value==“完了”){

record.商品販売コード_重複チェック用.value = “”
}else{
record.商品販売コード_重複チェック用.value = str商品販売コード_重複チェック用
}
return event;
});

自己解決しましたのでクローズします。

【対処方法】

①チェック用のテキストボックスを重複不可で作成する。

→①ルックアップからのコピー用のテキストボックス(イベント発火用)と重複不可チェック用のテキストボックスの2つに分けました。

考えてみれば単純な方法でした。ありがとうございました。