【したいこと】
・コンボボックス+ルックアップの組み合わせで、且つ、コンボボックスが特定の値の時のみ、ルックアップの値で重複チェックがしたい。
(イメージ)ステータス(未着手、作業中、完了)+商品コードで完了以外の時に、レコードの商品コードが重複しないようにチェックをする。
【したこと】
①チェック用のテキストボックスを重複不可で作成する。
②ルックアップで①のテキストボックスに商品コードを挿入する。
(ルックアップでは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;
});