いつもお世話になっております。
アプリA(ID:203)ではルックアップでアプリBの値を取得しています。
アプリBを変更後保存をしたら自動的にアプリAの値も変更するようにしたいです。
投稿を参考に組んだのですが、以下のエラーが出ます。
クエリ部分が間違っていると思うのですが、書き方が分からず困っています。
参考になる資料等あれば教えていただけますでしょうか。
そもそもテーブル内のルックアップは自動更新できないのでしょうか。
(function() {
"use strict";
var target = null;
kintone.events.on(['app.record.edit.submit', 'app.record.index.edit.submit'], function(event) {
var updateappid = 203;
var target = event.record.社内品番.value;
var manager = new KintoneRecordManager;
manager.getRecords(updateappid, target, function(records) {
updateLookup(updateappid, createPutRecords(records));
KintoneRecordManager.prototype.records = [];
KintoneRecordManager.prototype.offset = 0;
});
});
kintone.events.on('app.record.edit.submit', function(event) {
var updateappid = 203;
var target = event.record.社内品番.value;
var manager = new KintoneRecordManager;
manager.getRecords(updateappid, target, function(records) {
updateLookup(updateappid, createPutRecords(records));
KintoneRecordManager.prototype.records = [];
KintoneRecordManager.prototype.offset = 0;
});
});
var KintoneRecordManager = (function() {
function KintoneRecordManager() {
}
KintoneRecordManager.prototype.records = []; // 取得したレコード
KintoneRecordManager.prototype.limit = 2; // 一回あたりの最大取得件数
KintoneRecordManager.prototype.offset = 0; // オフセット
KintoneRecordManager.prototype.getRecords = function(updateappid, target, callback) {
kintone.api(
kintone.api.url('/k/v1/records', true),
'GET',
{
app: updateappid,
query: '品番 = "'+ target + '" ' + (' limit ' + this.limit + ' offset ' + this.offset)
},
(function(_this) {
return function(res) {
var len;
Array.prototype.push.apply(_this.records, res.records);
len = res.records.length;
_this.offset += len;
if (len < _this.limit) { // まだレコードがあるか?
if (callback !== null) {
callback(_this.records); // レコード取得後のcallback
}
}
else {
_this.getRecords(updateappid, target, callback); // 自分自身をコール
}
};
})(this)
);
};
return KintoneRecordManager;
})();
function createPutRecords(records) {
var putRecords = [];
for (var i = 0, l = records.length; i < l; i++) {
var record = records[i];
putRecords[i] = {
id: record['$id'].value,
record: {
"品名一覧" : {
value: record.品名一覧.value
}
}
};
}
return putRecords;
}
function updateLookup(updateappId, records) {
if ( records.length !== 0 ) {
kintone.api(
kintone.api.url('/k/v1/records', true),
'PUT',
{
app: updateappId,
records: records
},
function(resp) {
}
);
}
}
})();