何を実現したいのか
ステータスが「登録済」となったレコードの変更申請をスタートするようなプロセス管理を実装したいと考えております。 レコードを登録した人と変更申請を開始する人は異なる場合があるので、ボタンを押した人が次のステータス「変更申請中」となったレコードの作業者になるようにしたいです。
発生した問題
app.record.detail.process.proceed イベントで、レコードを編集した人を特定の管理用ユーザーフィールド「作業者設定用」に保存しておき、「変更申請中」ステータスでの作業者を、その管理用ユーザーフィールド「作業者設定用」で指定されたユーザーにするのはどうかと思ったのですが、ボタンを押した時点ではまだステータスは変わっていないので思ったような動作にならず、ボタンを押す前の時点の「作業者設定用」フィールドのユーザーが作業者になってしまうということになってしまいました。
実行したコード
kintone.events.on(['app.record.detail.process.proceed'], function(event) {
var record = event.record;
var user = kintone.getLoginUser();
var currentStatus = event.status.value;
if (currentStatus === '登録済') {
record.作業者設定用.value = [{ code: user.code, name: user.name }];
}
return event;
});
このJSを登録した状態で、プロセス管理で「登録済」の次のステータスとして用意した「変更申請中」ステータスの作業者を「作業者設定用」フィールドとしました。
ただし上述のとおり期待するような結果にはなりませんでした。
どのように設定すればボタンを押したユーザーを次のステータスの作業者にできるでしょうか。