保存処理はされるのに、レコードが更新されないまま保存されてしまう

お世話になっております。
また、不明なところが出てしまったのでご教示ください

背景・実現したいこと

 保存処理中(保存前)イベント中に、複数のレコードの更新を行いたい

エラー情報 (開発者ツールのコンソール)

レコードの更新がされていない状態で保存されてしまう
コンソール上のエラーはなし

利用したソースコード

(function () {
'use strict';
function billing_make(f_bill_category, f_userid, f_use_date, f_use_shop, f_amount, f_authoryid) {
return new Promise(function (resolve, reject) {
var api1 = {
"app": '20',
"query": '会員番号="' + f_userid + '"',
}
return kintone.api(kintone.api.url('/k/v1/records.json', true), 'GET', api1).then(function (resp1) {
var api1_record = resp1.records;
if (api1_record.length > 0) {
//レコード存在->レコード追記
//限度額超過でも追記する。
api1_record[0][""]
var add1 = {
"app": '28',
"record": {
"会員番号": {
"value": f_userid,
},
"依頼書番号": {
"value": f_authoryid,
},
"利用日": {
"value": f_use_date,
},
"請求カテゴリ": {
"value": f_bill_category,
},
"加盟店名": {
"value": f_use_shop,
},
"請求額": {
"value": f_amount,
}
}
}

return kintone.api(kintone.api.url('/k/v1/record.json', true), 'POST', add1, (resp3) => {
//登録完了
resolve(true);
});
}
})
})
}

function autoNum(event) {
var record = event.record;
var min = 10000000000;
var max = 99999999999;
var a = Math.floor(Math.random() * (max + 1 - min)) + min;

var query = {
"app": kintone.app.getId(),
"query": '管理番号="' + a + '"'
}

return kintone.api(kintone.api.url('/k/v1/records.json', true), 'GET', query).then(function (resp) {
var records = resp.records;
if (records.length > 0) {
//レコード存在
autoNum(event);
} else {
record['管理番号'].disabled = false;
event.record['管理番号'].value = a;
}
return event;
}).catch(function (e) {
swal({
title: "APIエラー (" + e.code + ")",
text: "kintone API処理中にエラーが起きました。" + e.message + "Cybozu問合用ID: " + e.id,
icon: "error",
})
//alert("API処理中にエラーが発生しました。 - error: "+e.message);
return false;
});
}

function pause_auth(ev1, fp_status, fp_jijen, fp_ju_dtl, fp_app_id, fp_group_id, fp_div, fp_dvc_cnt) {
return new Promise(function (ok, ng) {
var input = ev1.record;
var api2 = {
"app": '20',
"query": '会員番号="' + fp_app_id + '"',
}
return kintone.api(kintone.api.url('/k/v1/records.json', true), 'GET', api2).then(function (resp3) {
var rec3 = resp3.records["0"];
input['申請ステータス'].disabled = false;
input['請求額_1人当たり'].disabled = false;
input['事前判定結果'].disabled = false;
input['判定結果詳細'].disabled = false;
input['申請者名義'].disabled = false;
input['請求先名義'].disabled = false;
input['按分人数'].disabled = false;
alert(input["申請ステータス"]["value"]);
input["申請ステータス"]["value"] = fp_status
input["事前判定結果"]["value"] = fp_jijen;
input["判定結果詳細"]["value"] = fp_ju_dtl;
input["申請者名義"]["value"] = rec3["氏"]["value"] + rec3["名"]["value"];
input["請求先名義"]["value"] = "グループ請求: " + fp_group_id;
input["按分人数"]["value"] = fp_dvc_cnt;
input["請求額_1人当たり"]["value"] = fp_div;
alert("完了")
ok();
}, function (e) {
ng(new Error(e));
})
})
}

var sel1 = ['app.record.create.change.申請項目', 'app.record.edit.change.申請項目'];
kintone.events.on(sel1, function (ev2) {
var r1 = ev2.record;
var s1 = r1['申請項目'].value;

if (s1 === "按分申請") {
//按分のとき
r1['按分グループID'].disabled = false;
r1['請求先ID'].disabled = true;
} else if (s1 === "請求申請") {
r1['按分グループID'].disabled = true;
r1['請求先ID'].disabled = false;
}

return ev2;
})

kintone.events.on('app.record.create.submit', function (ev1) {
var category = ev1.record['申請項目'].value;
var application_user_id = ev1.record['申請者ID'].value;
var use_date = ev1.record['利用日'].value;
var amount = ev1.record['按分対象額'].value;
var place = ev1.record['加盟店名'].value;
var authory_id = ev1.record['管理番号'].value;
var pay_category = ev1.record['購入カテゴリ'].value;

if (category === "按分申請") {
//按分申請の処理
var group_id = ev1.record['按分グループID'].value;
if (!group_id) {
return new kintone.Promise(function (resolve1, reject1) {
swal({
title: "入力エラー(CA-BT-42)",
text: "按分グループIDが入力されていないか存在しません",
icon: "error"
})
return resolve1(false);
})
} else {
//処理続行
var check_groupid = {
"app": "30",
"query": '管理コード="' + group_id + '"'
};

return kintone.api(kintone.api.url('/k/v1/records.json', true), 'GET', check_groupid).then(function (resp1) {
//resp1
if (!resp1.records.length) {
return new kintone.Promise(function (resolve2, reject2) {
swal({
title: "入力エラー(CA-BT-42)",
text: "按分グループIDが入力されていないか存在しません",
icon: "error"
})
resolve2(false);
})
}
var user_count = resp1.records[0]['会員一覧'].value.length;
var divide = Math.ceil(amount / user_count);

return new kintone.Promise(function (resolve3, reject3) {
swal({
title: "申請前確認(HO-IS-DV-0128)",
text: "次の通り申請を行います。よろしいですか?・按分対象額:" + amount + "円・按分人数:" + user_count + "人・1人当たりの按分額:約" + divide + "円",
icon: "info",
buttons: {
cansel: "いいえ",
ok: "はい"
}
}).then(function (val1) {
if (val1 === "cansel") {
return new kintone.Promise(function (resolve4, reject4) {
swal({
title: "処理キャンセル(HO-UI-XX-9999)",
text: "停止処理をキャンセルしました",
icon: "success"
})
resolve3(false);
resolve4(false);
})
} else {
//処理を続行する。
//カテゴリーごとに基準額を判定し保留かOKかを確認する
if (pay_category === "その他") {
//保留
var etc_category_name = ev1.record['その他の場合'].value;
if (!etc_category_name) {
return new kintone.Promise(function (resolve4, reject4) {
swal({
title: "入力エラー(CA-BT-80)",
text: "その他の場合、何の請求かを入力する必要があります。",
icon: "error"
})
resolve3(false);
resolve4(false);
})
}
return new kintone.Promise(function (resolve, reject) {
swal({
title: "審査保留(HO-AM-ST-2037)",
text: "この申請は保留となりました。審査結果は数日中に更新されますのでお待ちください場合によって確認をさせていただきますのでご了承ください",
icon: "warning"
}).then(function () {
var judge_dtl = "◆自動判定◆結果:保留カテゴリ:その他_" + etc_category_name;
return pause_auth(ev1, "審査中", "判定保留(調査要)", judge_dtl, application_user_id, group_id, divide, user_count).then(function (data) {
//成功
resolve(ev1);
resolve3();
}, function (e) {
alert(e);
})
})
})
} else if (pay_category === "日用品") {
//4000円以上で保留
if (amount >= 4000) {
//保留

} else {
//続行
}
} else if (pay_category === "食料品") {
//5000円以上で保留
if (amount >= 5000) {
//保留
} else {
//続行
}
} else if (pay_category === "外食") {
//20000円以上で保留
if (amount >= 20000) {
//保留
} else {
//続行
}
} else if (pay_category === "賃料") {
//20万以上で保留
if (amount >= 200000) {
//保留
} else {
//続行
}
} else if (pay_category === "電気・ガス・水道") {
//20000円以上で保留
if (amount >= 20000) {
//保留
} else {
//続行
}
} else if (pay_category === "回線") {
//30000円以上で保留
if (amount >= 3000) {
//保留
} else {
//続行
}
} else if (pay_category === "保険料・税") {
//一律エラー
return new kintone.Promise(function (resolve4, reject4) {
swal({
title: "入力エラー(CA-SL-20)",
text: "組み合わせエラーです。申請内容をご確認ください。",
icon: "error"
})
resolve3(false);
resolve4(false);

})
} else if (pay_category === "手数料等") {
//一律エラー
return new kintone.Promise(function (resolve4, reject4) {
swal({
title: "入力エラー(CA-SL-20)",
text: "組み合わせエラーです。申請内容をご確認ください。",
icon: "error"
})
resolve3(false);
resolve4(false);
})
} else {
//エラー(未選択)
return new kintone.Promise(function (resolve4, reject4) {
swal({
title: "入力エラー(CA-SL-50)",
text: "カテゴリーが選択されていません。",
icon: "error"
})
resolve3(false);
resolve4(false);
})
}
resolve3();
}
})
})
})
}
} else if (category === "請求申請") {
//請求申請の処理
var billing_id = ev1.record['請求先ID'].value;
if (!billing_id) {
return new kintone.Promise(function (resolve5, reject5) {
swal({
title: "入力エラー(CA-BT-48)",
text: "請求先IDが入力されていないか存在しません",
icon: "error"
})
return resolve5(false);
})
} else {
//処理続行
}
}
})

kintone.events.on('app.record.create.show', function (ev3) {
//フィールドを非活性にする
var record = ev3.record;
var min = 10000000000;
var max = 99999999999;
var a = Math.floor(Math.random() * (max + 1 - min)) + min;

var query = {
"app": kintone.app.getId(),
"query": '管理番号="' + a + '"'
}

return kintone.api(kintone.api.url('/k/v1/records.json', true), 'GET', query).then(function (resp) {
var records = resp.records;
if (records.length > 0) {
//レコード存在
autoNum(ev3);
} else {
//record['管理番号'].disabled = false;
ev3.record['管理番号'].value = a;
record['管理番号'].disabled = true;
record['按分グループID'].disabled = false;
record['請求先ID'].disabled = true;
record['申請ステータス'].disabled = true;
record['請求額_1人当たり'].disabled = true;
record['事前判定結果'].disabled = true;
record['判定結果詳細'].disabled = true;
record['申請者名義'].disabled = true;
record['請求先名義'].disabled = true;
record['按分人数'].disabled = true;
}
return ev3;
}).catch(function (e) {
swal({
title: "APIエラー (" + e.code + ")",
text: "kintone API処理中にエラーが起きました。" + e.message + "Cybozu問合用ID: " + e.id,
icon: "error",
})
//alert("API処理中にエラーが発生しました。 - error: "+e.message);
return false;
});
})

kintone.events.on(['app.record.edit.show', 'app.record.index.edit.show'], function (event) {
var record = event.record;
//フィールドを非活性にする
record['管理番号'].disabled = true;
record['按分グループID'].disabled = false;
record['請求先ID'].disabled = true;
record['申請ステータス'].disabled = true;
record['請求額_1人当たり'].disabled = true;
record['事前判定結果'].disabled = true;
record['判定結果詳細'].disabled = true;
record['申請者名義'].disabled = true;
record['請求先名義'].disabled = true;
record['按分人数'].disabled = true;
return event;
});
})();

自己解決しました。

イベントハンドラをきちんと返していないことと、メイン処理側で記載漏れをしていたことが原因でした。
お騒がせしました。