他アプリのサブテーブルの更新

お世話になります。

Aアプリのデータを作成するときにBアプリのデータも作成します。

Aアプリのサブテーブルに変更があった場合、雑な処理だと思われると

思いますが、そのままBアプリのサブテーブルを上書きする処理に

したいと思っています。

下記のソースで実行したところエラーになり、

「更新するレコードを、「id」か「updateKey」のいずれかのパラメーターで指定する必要があります」

とメッセージが出ます。idを指定しているつもりなのですが、

どこか記述がおかしいのでしょうか。

よくわかってない人の質問で申し訳ありませんが、どなたか

助けていただけると助かります。

      //明細一覧データの作成

      for(var i = 0; i < rec.order_detail.value.length; i++){

          subTable.push({

            value:{

              “purchace_detail_no”:{

                value:j

              },

              “order_detail_no”:{

                value:rec.order_detail.value[i].value.order_detail_no.value

              },

              “product_cd”:{

                value:rec.order_detail.value[i].value.product_cd.value

              },

              “product_nm”:{

                value:rec.order_detail.value[i].value.product_nm.value

              },

              “standard”:{

                  value:rec.order_detail.value[i].value.standard.value

              },

              “num”:{

                  value:rec.order_detail.value[i].value.num.value

              },

              “purchase_unit_price”:{

                value:rec.order_detail.value[i].value.purchase_unit_price.value

              }

            }

          });

          j++;

      }

          var body2 = {

            “app”:27,

            “id”:resp.records[0].id, //値は58

            “record”:{

              //受注明細テーブル

              “purchace_detail”:{

                “value”:subTable

              }

              

            }

          };

          kintone.api(kintone.api.url(‘/k/v1/record’,true), ‘PUT’,body2,function(resp2){

            console.log(resp2);

          }, function(error){

            console.log(error);

          });

 

フィールド形式を確認してみてください。

“$id”: {
“type”: “__ID__”,
“value”: “1”
}

レコード取得の方法がわかりませんが、$id を含むレコードならば

records[0][‘$id’].value で値を取得できます。

 

変数の中身については、ブラウザーのデバッグツールを使うと簡単にわかります。

動かない?そんな時はデバッグをしてみよう!入門編

 

 

rex02201様

ご回答ありがとうございます。

ご指摘の通りidの取得方法が間違っておりました。