ルックアップ元のテーブルをルックアップ先に表示させたいと思っています。
ルックアップ自体は、基本機能(文字列(1行))で正常動作しています。
下記を参考にしましたが、元々レコード番号で指定しているものを文字列にした為エラーになっている気がします。
コンソールのエラー情報は、下記の通りです。
『GET アドレス 400 (Bad Request)』
『クエリ記法が間違っています。』
色々調べてみましたが自分で解決できなかったのでご教授お願い致します。
//会社情報アプリの情報取得
(function() {
'use strict';
kintone.events.on('app.record.detail.show', function(event) {
//会社情報アプリのID取得
const 会社情報アプリID= kintone.app.getLookupTargetAppId('管理会社名');
// 「物件情報アプリ」で利用する「管理会社名」を取得
var 管理会社名 = event["record"]["管理会社名"]["value"];
// フィールドコードを変数に格納
var 管理会社情報 = '会社情報'; //テーブル名
var 管理会社支店名 = '支店名';
var 管理会社郵便番号 = '郵便番号';
var 管理会社住所 = '住所';
var 管理会社TEL = 'TEL';
var 管理会社FAX = 'FAX';
// 「物件情報アプリ」で情報を表示する表を作成
var tableHtml = '<thead><tr>' +
'<th> ' + 管理会社支店名 + ' </th>' +
'<th> ' + 管理会社郵便番号 + ' </th>' +
'<th> ' + 管理会社住所 + ' </th>' +
'<th> ' + 管理会社TEL + ' </th>' +
'<th> ' + 管理会社FAX + ' </th>' +
'</tr>' +
'</thead>' +
'</tbody>';
// スペースフィールドに作成した表を表示
var tableEl = document.createElement('table');
tableEl.id = 'table';
tableEl.border = '1';
tableEl.style.textAlign = 'center';
tableEl.style.padding = '10px';
tableEl.insertAdjacentHTML('afterbegin', tableHtml);
kintone.app.record.getSpaceElement('company').appendChild(tableEl);
// 「会社情報アプリ」から「会社名」が同じレコードを取得
var params = {
'app': 会社情報アプリID,
'fields': '会社名',
'query': '会社名 = "' + 管理会社名 + "'"
};
console.log(params)
return kintone.api(kintone.api.url('/k/v1/records', true), 'GET', params).then(function(resp) {
var companyAppRecords = resp.records[0];
// 同じ「会社名」のレコードが「会社情報アプリ」に存在しないときにエラーを表示
if (companyAppRecords.length === 0) {
window.alert('「会社情報アプリ」に同じ「会社名」のレコードがないため、「会社情報」テーブルのデータを表示できません。');
return event;
}
// 取得した「会社情報アプリ」のテーブルデータを作成した表に格納
var tableRows = companyAppRecords[0][管理会社情報].value;
var tableRef = document.getElementById('table');
tableRows.forEach(function(row) {
var tableRow = tableRef.insertRow(-1);
var cell1 = tableRow.insertCell(-1);
var cell2 = tableRow.insertCell(-1);
var cell3 = tableRow.insertCell(-1);
var cell4 = tableRow.insertCell(-1);
var cell5 = tableRow.insertCell(-1);
cell1.appendChild(document.createTextNode(row.value[管理会社支店名].value));
cell2.appendChild(document.createTextNode(row.value[管理会社郵便番号].value));
cell3.appendChild(document.createTextNode(row.value[管理会社住所].value));
cell4.appendChild(document.createTextNode(row.value[管理会社TEL].value));
cell5.appendChild(document.createTextNode(row.value[管理会社FAX].value));
});
return event;
}).catch(function(error) {
// エラー表示をする
window.alert('エラーが起こりました。エラーメッセージ:' + error.message);
return event;
});
});
})();