ルックアップの絞り込みの初期設で表示されるレコードを自動選択

お世話になります。

ルックアップの絞り込みの初期設で表示されるレコードを自動選択したいですが、マウスで取得ボタンを押さないと選択されないです。

取得ボタンを押すと

参照の承認ルートが表示され、選択ボタンを押せば、選択されます。

 

 

取得ボタンを押す必要なく、絞り込みの初期設で表示されるレコードが自動的に反映させたいですが、方法があるでしょうか?

下記のscriptを試してみましたが、残念ながらこれは初期値設定の場合であって、絞り込みしたレコードを自動設定する方法を説明していません。


| kintone.events.on(‘app.record.edit.show’, function(event) { |

| var record = event.record; |

| record[‘ルックアップ’].value = ‘0001’; // ルックアップフィールドの値を設置する |

| record[‘ルックアップ’].lookup = true;
|

| return event; |

});


APIを呼び出して、絞り込みの初期設定で指定した条件のレコードを取得すれば、
期待される結果が得られると思います。

優先する組織はPRIMARY_ORGANIZATION関数で指定できます。
https://developer.cybozu.io/hc/ja/articles/202331474-%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E5%8F%96%E5%BE%97-GET- 

Ryoji様

サポートありがとうございました。

プログラミングがあまり得意ではありませんが、上記のお手掛かりを参考に試して見ます。

どうぞよろしくお願い致します。

下記のコードで解決致しました!

(function() {
“use strict”;
var events1 = [‘app.record.create.show’];
kintone.events.on(events1, function(event) {
var record = event.record;
if (!record[‘承認ルート名’][‘value’]) {
// ルックアップ先アプリIDを取得してリクエストボディにセット
var appId = kintone.app.getLookupTargetAppId(“承認ルート名”);
var user = kintone.getLoginUser();
var params = {
‘app’: appId,
// 相識をキーにしたクエリ
‘query’: ‘組織選択 in (PRIMARY_ORGANIZATION()) order by $id desc limit 1’
};
// REST APIでルックアップ先のレコードを1件取得
kintone.api(kintone.api.url(‘/k/v1/records’, true), ‘GET’, params, function(resp) {

var setRecord = kintone.app.record.get();
// 取得したレコードの値をルックアップ元にセット
setRecord[‘record’][‘承認ルート名’][‘value’] = resp[‘records’][0][‘承認ルート名’][‘value’];
// セットした値でルックアップ実行
setRecord[‘record’][‘承認ルート名’][‘lookup’] = true;
kintone.app.record.set(setRecord);

});
}
});

})();

解決されたようで何よりです。