記事公開日:2023/04/05
平素はSmartDBをご利用いただき、ありがとうございます。
この度、下記の仕様変更を予定しています。
内容についてご不明な点がある場合は、弊社サポートセンターへお問い合わせください。
変更内容
イベントハンドラによる文書更新処理の効率化
これまで、下記のイベントハンドラを利用している場合、該当のイベントハンドラが実施される度に文書データの更新を確定していました。
- <再計算>
- <文書代入>
- <文書部品代入> ※<文書代入>を利用していない場合
- <アカウント追加> ※部品を指定した場合
- <アカウント削除>※部品を指定した場合
これらの処理を改善し、文書データの更新確定はイベントハンドラの終了時にすべて統合して実施するように改善します。
ユーザ影響
- イベントハンドラで複数の部品を更新した際に更新履歴が分かれてしまう場合がありましたが、この事象が改善します。
- イベントハンドラの書き方によって性能差があった問題(性能に影響する要素と指標値について に記載のプロセス定義に関わる問題)が解消します。
<再計算>タグによる再計算範囲の限定化
これまで<再計算>を記載した場合、対象文書で編集不可の評価式すべてを再計算していました。
この処理を改善し、デフォルトでは対象のイベントハンドラエリア※1で<再計算>タグよりも前に更新された部品(再計算のトリガーとなる部品)を利用している※2評価式のみを再計算するよう仕様を変更します。
※1イベントハンドラを定義するエリアごとに判断します。
連続した処理であっても「ボタンクリック時」と「アクティビティ終了時」は個別に判断されます。
※2評価式での利用は、評価式内で直接該当の部品を参照している場合以外に、
条件のフィルタに該当の部品が含まれる場合も対象です。
ただし、下記の場合には直前の更新を関係なくすべての評価式の再計算を実施します。
- <再計算 items="all" document="doc01"/> のようにitems="all"を追加した場合(リリース以降使用可能)
- 対象のイベントハンドラエリアで<再計算>以前に部品の値が更新されていない場合
ユーザ影響
- <再計算>を記載しているタイミングによっては再計算される部品が変更される可能性があります。
背景
プロセスを実施する際にイベントハンドラの文書更新により処理時間がかかり、実施完了画面が表示されるまで待たされるというお問い合わせをいただくことがありました。
特に、イベントハンドラ内で大量の部品を対象に更新する場合や、評価式の再計算結果を利用して条件分岐するなどの利用シーンで、文書の保存を繰り返し実施する内部処理により時間がかかるケースがあり、その原因としてイベントハンドラの記載方法に依存しているところがありました。
今回、全体の処理量を削減、効率化し、イベントハンドラの記載方法に依存しない処理の見直しで、プロセス実施時の性能を改善しました。
日程
2023年5月19日のリリースを予定しています。
今後、情報の変更がある場合は随時更新致します。
ご不便おかけしますが、ご理解いただけるようお願い致します。
以上