前回の記事ではkintoneのサブテーブルの操作について解説しました。
続いて、kintoneにおけるJavaScriptカスタマイズでは「ルックアップ操作」を定義できます。
この記事ではレコード内のルックアップの操作について解説します。
- kintoneのJavaScriptカスタマイズでは、ルックアップの操作を定義できます。
- ルックアップを取得するには…
event.record.ルックアップ.lookup = true; - ルックアップをクリアするには…
event.record.ルックアップ.lookup = ‘CLEAR’; - ルックアップ取得できる条件は…
ルックアップの検索結果が1件の場合のみ
kintoneのルックアップとは
kintoneのルックアップフィールドは、他のアプリのフィールド値を取得するために使います。
案件管理アプリであれば、顧客マスタから顧客名をルックアップで取得し、それに付帯する生年月日、住所、電話番号なども一緒にコピーできます。
このルックアップで特徴的な操作が「取得」と「クリア」です。
編集画面上ではルックアップフィールドの右側にこの二つのボタンが表示されます。
これらをJavaScriptで操作することができます。
標準機能ではルックアップの初期値を設定することができません。
JavaScriptを使えば、追加画面表示時にルックアップの初期値を設定できます。
ルックアップを取得する
ルックアップを取得する場合は値が必要です。
フィールド値操作の記事で解説した通り、ルックアップフィールドのvalueに値を設定するだけです。
event.record.ルックアップ.value = 値;
しかし、これだけではルックアップを取得したことにはなりません。
valueを設定した後に以下を記述します。
event.record.ルックアップ.lookup = true;
これでルックアップが取得されます。
この形で取得できるのは、ルックアップの検索結果が1件の場合のみですので、ご注意ください。
(() => {
'use strict';
kintone.events.on('app.record.create.show', event => {
const record = event.record;
record.ルックアップ.value = '山田太郎';
record.ルックアップ.lookup = true;
return event;
});
})();
ルックアップをクリアする
ルックアップをクリアする場合は以下のように記述します。
event.record.ルックアップ.lookup = ‘CLEAR’;
たったこれだけです。非常に簡単ですね。
(() => {
'use strict';
kintone.events.on('app.record.create.change.日付', event => {
const record = event.record;
record.ルックアップ.lookup = 'CLEAR';
return event;
});
})();
- kintoneのJavaScriptカスタマイズでは、ルックアップの操作を定義できます。
- ルックアップを取得するには…
event.record.ルックアップ.lookup = true; - ルックアップをクリアするには…
event.record.ルックアップ.lookup = ‘CLEAR’; - ルックアップ取得できる条件は…
ルックアップの検索結果が1件の場合のみ
ルックアップを取得できるのは検索結果が1件の場合のみという点は要注意ですね。
ルックアップ参照元のフィールドが値の重複を禁止していれば気にせず使えますよ。
次回の記事ではエラー処理について解説します。