以下の処理で function(error) 側 にレスポンスが帰ってきます。
choromeのデバッガでfunction(error)の内容を見ると「=“”]となります。
しかし、params に指定した更新処理は見た目すべて正常に終わっております。
kintoneの履歴でも確認できます。
これは本当にエラーなのでしょうか?
var params = { “requests” : rqst };
return kintone.api(kintone.api.url(‘/k/v1/bulkRequest’, true), ‘POST’, params
, function(resp) { //success
console.log(resp); }
, function(error) { //error
console.log(“error---------XX”);}
);
中井さん
return kintone.api(… とありますが、success処理で、何も返していません。
たぶん、イベント処理で、 promise 処理だと思いますが、promise オブジェクトを返していないというエラーだと思います。
success処理の最後で、return event; してください。
rex0220さま
ご回答ありがとうございます。
「promise オブジェクトを返していないというエラーだと思います。
success処理の最後で、return event; してください。」
申し訳ございません。意味は分かりました。
が、記述方法がいまいちわかりません。
function(resp) { //success
console.log(resp);
return event; } <----------- これを追加するということでしょうか?
中井さん
一応、 Promiseサポートされたイベントか確認してください。
kintone API で Promise を使ってみよう! kintone JavaScript API の変更点まとめ Promiseサポートされたイベント
Promiseサポートされたイベントだとして、私の好みで then, catch 形式にします。
また、エラー時も同様にします。
var params = { "requests": rqst };
return kintone.api(kintone.api.url('/k/v1/bulkRequest', true), 'POST', params).then(function(resp) { //success
console.log(resp);
return event;
}).catch(function(error) {
console.log("error", error);
event.error = error;
return event;
});
出来れば、Promise 関連について、リンクをまとめていますので、ひととおり読んでみてください。
kintone カスタマイズ関連リンク集 Promise 関連
確認いたします。
ここまでやると、メイン画面の処理(更新)もエラー時はキャンセル(ロールバック)できるということですね。
本当にありがとうございます。