# 複数のルックアップの自動更新方法について

**URL:** <https://community.cybozu.dev/t/topic/8773>\
**Category:** kintone 開発相談\
**Created:** [2024 年 3 月 5 日午前 2:32 UTC](https://community.cybozu.dev/t/topic/8773 "2024-03-05T02:32:49Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![m\_yoda](https://avatars.discourse-cdn.com/v4/letter/m/c89c15/32.png) [@m\_yoda](https://community.cybozu.dev/u/m_yoda)\
**Post date:** [2024 年 3 月 5 日午前 2:32 UTC](https://community.cybozu.dev/t/topic/8773/1 "2024-03-05T02:32:49Z")

</div>

第 11 回 kintone REST API を利用したレコード更新（ルックアップ自動更新）を参考にルックアップの値を自動更新しているのですが、  
同じルックアップを複数用意しています。  
顧客マスタから、自分の担当する顧客を、ルックアップで、顧客１（PN1）、顧客２（PN2）、、、と複数持たせています。  
顧客マスタが変更されたら、顧客１、顧客２に該当なものがあれば更新させたいのですが、顧客１のルックアップは更新できるのですが、それ以降の更新の記載方法が判りません。

[kintone における Promise の書き方の基本 - cybozu developer network](https://cybozu.dev/ja/kintone/tips/development/customize/development-know-how/promise-syntax/) kintoneにおけるPromiseの記載方法を読みながら、いろいろ試しているのですが、  
JSEdit for kintone のエディタで警告表示され、更新ができない状況です。

基本的な構文を理解していない状況で申し訳ないのですが、  
アドバイスいただけると助かります。  
どうぞよろしくお願いします。

コード  
(function() {  
‘use strict’;  
const updateAppId = 372;

const createPutRecords1 = (records) =\> {  
const putRecords = ;  
for (let i = 0, l = records.length; i \< l; i++) {  
const record = records[i];  
putRecords[i] = {  
id: record.$id.value,  
record: {  
ＰＮ１: {  
value: record.ＰＮ１.value  
}  
}  
};  
}  
return putRecords;  
};  
const createPutRecords2 = (records) =\> {  
const putRecords = ;  
for (let i = 0, l = records.length; i \< l; i++) {  
const record = records[i];  
putRecords[i] = {  
id: record.$id.value,  
record: {  
ＰＮ２: {  
value: record.ＰＮ２.value  
}  
}  
};  
}  
return putRecords;  
};

```
kintone.events.on(['app.record.create.submit.success','app.record.edit.submit.success','app.record.index.edit.submit.success'], function(event) {
           var record = event.record;
  
  const paramGet1 = {
  app: updateAppId,
  query: 'ＰＮ１= ' + event.record['PNコード'].value
};
  const paramGet2 = {
  app: updateAppId,
  query: 'ＰＮ２= ' + event.record['PNコード'].value
};

return kintone.api(kintone.api.url('/k/v1/records', true), 'GET', paramGet1).then((resp) => {

  // ルックアップの更新
  const records = resp.records;
  const paramPut = {
    app: updateAppId,
    records: createPutRecords1(records)
  };

  return kintone.api(kintone.api.url('/k/v1/records', true), 'PUT', paramPut);

```

// ＊＊＊＊ここから、paramGet2を渡してGETする、PUTする処理を追記すれば良いと思うのですが、、うまく動きません。＊＊＊＊

```
}).then((resp2) => {
   // alert('ルックアップを更新しました。');
  return event;
}).catch((error) => {
  alert('ルックアップの更新でエラーが発生しました。\n' + error.message);
  return event;
});

});

```

})();

---

<div class="post-metadata">

**Author:** ![m\_yoda](https://avatars.discourse-cdn.com/v4/letter/m/c89c15/32.png) [@m\_yoda](https://community.cybozu.dev/u/m_yoda)\
**Post date:** [2024 年 3 月 5 日午前 6:47 UTC](https://community.cybozu.dev/t/topic/8773/2 "2024-03-05T06:47:24Z")

</div>

解決できました。失礼しました。
