ファイルから一括で読み込んだレコードのテーブルについて

お世話になっております。

 

掲題の件、ファイルから一括でのレコード読み込みが完了した後、

レコードを確認すると、テーブルに行がありません。

保存しなおすと行が作成させます。(以下の図を参照)

※一括で読みこんだデータには、テーブルのデータは入っていません。

 

■ファイルで取り込んだ直後(テーブルに行がない)

■レコード編集画面を開き、保存しなおした後(テーブルに行がある)

 

レコード一覧画面に地図を表示させ、地図上のピンを選択すると電話内容を入力できるようにしており、APIのPUTで対象レコードのテーブルに更新保存をするシステムになっています。

 

テーブルに行があるレコードだと問題なくPUTされるのですが、

テーブルに行がないレコードではPUTされず処理がスルーされてしまいます。

 

テーブルに行がない場合ではPUTはできないのでしょうか?

 

テーブルへのPUTのコードは以下の通りです。

======================================================

var existing_subtable = resp.records[0].電話対応履歴.value; // 既存のサブテーブル

var subtable = []; // 最終的にPUTするサブテーブル
var appended_subtable = []; // 追加したいサブテーブル

// 既存のサブテーブルを抽出
for (var i = 0; i < existing_subtable.length; i++) {
subtable.push(existing_subtable[i]);
}

appended_subtable = {
“value” : {
“recallday” : {
“type”: “DATE”,
“value” : ~
},
“時刻” : {
“type”: “TIME”,
“value” : ~
},
“person” : {
“type”: “DROP_DOWN”,
“value” : ~
},
“受け入れ” : {
“type”: “SINGLE_LINE_TEXT”,
“value” : ~
},
“callresult” : {
“type”: “MULTI_LINE_TEXT”,
“value” : ~
}
}
};

subtable = [].concat(appended_subtable, subtable); // 追加分の行を先頭にして結合

var put_record = {}; // レコード更新用オブジェクト
put_record[“電話対応履歴”] = {
value: subtable
};

// 更新処理
kintone.api(kintone.api.url(‘/k/v1/record’, true), ‘PUT’, {
app: myappid,
id: respId,
record: put_record
});

======================================================

 

お手数ですが、アドバイスなどいただけますと幸いです。

y-kishi さん

>テーブルに行がないレコードではPUTされず処理がスルーされてしまいます。

エラーになっていますか?

それとも、レコードは更新されて、リビジョンだけ上がっているのでしょうか?

元のテーブル行の有無は、更新に直接関係無いと思われます。

別の項目でエラーになっているなどは、ありませんか?

ありがちなのは、「ファイルから一括でのレコード読み込みが完了した後、」に、

いくつかの項目に必須などの制約を付けているなどです。

 

rex0220 様

 

返信が遅れてしまい申し訳ございません。

レコードは更新されており、テーブルに対してのPUTだけがスルーされている状況です。

 

 

アプリには必須項目を設けていないのでその辺りのエラーではないことは確認しているのですが、

テーブルの空行の有無は更新に関りがないとのことなので、コードに誤りがないか再度見直します。

 

ご回答いただきありがとうございました。