連番採番処理について

レコード追加画面保存前処理にてフィールドコード:申請番号の連番を採番したいと思っております。

申請番号フォーマット:YYYY-xxx(xxxは連番)

 

レコード追加画面の保存前処理にてPromiseオブジェクトを利用して実現しようと思っていますが、

保存後のデータに申請番号の値が登録されておりません。

alertでメッセージを出力している箇所は問題無く動作しているため、うまくreturn出来ていないものと思われます。

何方か知恵を貸して下さい。

 

下記にソースを添付します。

(function() {
“use strict”;

// レコード追加画面の保存前処理
kintone.events.on(‘app.record.create.submit’, function(event) {

var tmpNo = 1;
var record =event.record;
var m = moment();
var sysdate = m.format(‘YYYY’);

var params = {
‘app’ : kintone.app.getId(),
‘query’ : ‘申請番号 like "’ + sysdate + ‘" order by 申請番号 desc limit 1’,
‘fields’ : [‘申請番号’]
};

return kintone.api(kintone.api.url(‘/k/v1/records’, true), ‘GET’, params).then(function(resp) {
if (resp.records[0]) {
tmpNo = parseInt(resp.records[0][‘申請番号’].value.split(“-”),10) + 1;
}

//自動採番を申請番号に設定する
var autoApplyNo = sysdate + “-” + (‘000’ + tmpNo).slice(-3);
alert(“申請番号 " + autoApplyNo + " を登録します”);
record[‘申請番号’][‘value’] = autoApplyNo;
return event;
},function(resp) {
record[‘申請番号’].error = ‘申請番号が取得できません。’;
return event;
});
});
})();

自己解決出来ましたのでご報告いたします。

 

上記ソースも一部誤りがありましたが、申請番号が採番されない原因としてはフィールドアクセス権限で申請番号が

参照のみとなっていた為でした。

せめて保存が正常終了せずに弾いてくれればもっと早く気付く事が出来たのですが。。。

単純な設定ミスでした。失礼いたしました。