アプリAのドロップダウンの値で別アプリにあるアプリBのドロップダウンと同じ値のレコードを全てテーブルに書き出したい
下記コードで試した場合コンソールにGETとだけエラーが出ていて原因がわからないです
(function() {
‘use strict’;
// テーブルのカラム情報
const TABLE_INFO = {
colum1: { name: “製品番号_1”, type: “SINGLE_LINE_TEXT” },
colum2: { name: “製品名_テーブル”, type: “SINGLE_LINE_TEXT” },
};
// ドロップダウンフィールドの変更イベント
kintone.events.on([“app.record.create.change.不具合品等の種別”, “app.record.edit.change.不具合品等の種別”], (event) => {
const record = event.record;
const dropdownValue = record[“不具合品等の種別”].value;
if (dropdownValue) {
const targetAppId = kintone.app.getLookupTargetAppId(“製品名_テーブル”);
const query = ブランド = "${dropdownValue}"
;
const params = {
app: targetAppId,
query: query,
fields: [“製品名”, “製品番号”]
};
kintone.api(kintone.api.url(‘/k/v1/records’, true), ‘GET’, params, (resp) => {
const records = resp.records;
addRecordsToTable(records, “製品管理テーブル”, TABLE_INFO);
});
} else {
clearTable(record[“製品管理テーブル”].value);
}
return event;
});
/**
- レコードをテーブルに追加する関数
- @param {Array} records 取得したレコード
- @param {String} tableName テーブル名
- @param {Object} tableInfo テーブルのカラム情報
/
const addRecordsToTable = (records, tableName, tableInfo) => {
const record = kintone.app.record.get().record;
const table = record[tableName].value;
const col1 = tableInfo.colum1.name;
const col2 = tableInfo.colum2.name;
records.forEach((resRec) => {
table.push({
value: {
[col1]: {
value: resRec[“製品名_テーブル”].value,
type: tableInfo.colum1.type,
},
[col2]: {
value: resRec[“製品番号_1”].value,
type: tableInfo.colum2.type,
}
}
});
});
// 1行目(空白行)削除
if (!table[0].value[col1].value) table.splice(0, 1);
kintone.app.record.set({ record: record });
};
/* - テーブルを初期化する関数
- @param {Array} table テーブルの値
*/
const clearTable = (table) => {
for (let i = table.length; i >= 0; i–) {
table.splice(i, 1);
}
};
})();