http://smartsheet-platform.github.io/api-docs/?python#update-row(s)にある Python の例をほぼそのまま使用しています。違いは、1 つの行で 1 つのセルのみを更新していることです。変数の値の変化を確認できますrow_a
が、行は Smartsheet 自体で更新されません。
これは私のコードで、API ガイドに掲載されているコードとほぼ同じです。
row_a = smartsheet.Sheets.get_row(sheetId, 916467282667396)
cell_a = row_a.get_column(5937660066850692)
cell_a.value = 'new value'
row_a.set_column(cell_a.column_id, cell_a)
smartsheet.Sheets.update_rows(sheetId, [row_a])
このコードを実行した後、テキスト「新しい値」が Smartsheet に表示されないことを確認したので、最後の行の前に単語printを追加して、API 呼び出しによって何が返されるかを確認しました。これが結果です (読みやすくするためにインデントを追加しました) ):
{
"requestResponse": null,
"result": {
"code": 1062,
"name": "InvalidRowLocationError",
"recommendation": "Do not retry without fixing the problem.",
"shouldRetry": false,
"message": "Invalid row location.",
"statusCode": 400
}
}
を修正してInvalidRowLocationError
、行の更新を Smartsheet に送信するにはどうすればよいですか?