明細行単位の自動処理で「処理キャンセル」パーツのキャンセル設定を有効にした際の挙動について
処理キャンセルパーツの「キャンセル設定」を有効にすると、該当する明細行の処理のみがロールバックされます。
「楽楽販売」の自動処理において、実行単位を「明細単位」に設定している場合、システムは各明細行を1件の独立した処理として順次実行します。
処理キャンセルパーツの詳細設定で「このパーツ以前の処理はすべてキャンセルする」にチェックを入れている場合、そのパーツを通過したタイミングで、「現在処理を行っているその明細行」に対して行われた登録や更新などの処理内容のみが取り消し(ロールバック)されます。
この設定を行うことで、特定の条件に合致する明細行のみ処理を中断し、データの整合性を保つことが可能になります。
なお、その明細行の処理がキャンセルされたとしても、それより前に処理が完了している明細行や、その後に控えている明細行の処理には影響を与えず、自動処理自体は最後まで継続されます。
明細行単位の実行におけるロールバックの範囲と後続行への影響
例えば、1つのレコードに6行の明細があり、3行目の処理中に「キャンセル設定」が有効な処理キャンセルパーツを通過した場合の挙動は以下の通りです。
1行目・2行目:既に処理が正常に完了しているため、そのまま確定されます。
3行目:処理キャンセルパーツを通過したため、この自動処理内で3行目に対して行われた「レコード更新」や「レコード登録」などの操作がすべて取り消されます。
4行目〜6行目:3行目のキャンセルに関わらず、引き続き自動処理が実行されます。
このように、明細単位の自動処理では「1行ごとに処理の確定とロールバックの判定」が行われるため、特定の行でエラーやキャンセルが発生しても、レコード全体の処理が止まることはありません。
設定手順
処理キャンセルパーツで特定の明細行のみをロールバックさせるための具体的な設定手順は以下の通りです。
【設定箇所】 DB設定>機能設定>自動処理設定>[対象の自動処理]>自動処理パーツ設定>「処理キャンセル」パーツの詳細設定
- 自動処理の実行単位を確認する
対象の自動処理の基本設定にて、実行単位が「明細単位」であることを確認してください。
※実行単位は作成後に変更できないため、「レコード単位」で作成されている場合は新規作成が必要です。 - 処理キャンセルパーツを配置する
自動処理のフロー内で、処理を中断させたい条件分岐(YES/NO)の先に「処理キャンセル」パーツを配置します。 - キャンセル設定を有効にする
配置した「処理キャンセル」パーツの詳細設定を開き、「このパーツ以前の処理はすべてキャンセルする」のチェックボックスにチェックを入れます。
ここにチェックを入れない場合は、処理は中断されますが、そのパーツに到達するまでに行われた更新内容はそのままデータベースに反映されます。 - エラーメッセージを設定する
ユーザーが画面から手動で実行した際に表示されるメッセージを入力し、「確定」ボタンをクリックして保存します。
関連マニュアル
詳細な仕様の違いや作成手順については、下記記事をご確認ください。
自動処理設定:「処理キャンセル」パーツ
処理キャンセルパーツの基本的な役割や、キャンセル設定の有無による挙動の違いについて詳しく解説しています。
自動処理設定:「処理キャンセル」パーツ
自動処理の実行単位(レコード単位/明細単位)
自動処理を作成する際に選択する「実行単位」による処理回数やデータ構造の違いについて説明しています。
自動処理設定:実行単位(レコード単位/明细単位)
お問い合わせフォームよりご要望をお寄せください。
「楽楽販売」はお客様から頂戴したご意見・ご要望をもとに、
よりよく、寄り添う 販売管理クラウドを目指してまいります。
現在の仕様ではご希望の機能に対応しておりませんが、
お客様からの貴重なご意見として真摯に受け止め、今後の改善に役立ててまいります。
(記事ID:2610)
「自動処理設定」の関連記事一覧
こちらの記事もあわせてご確認ください。
- 選択した帳票タイプ(フォーマット)に応じて帳票を自動で出し分ける方法
- 明細単位の自動処理で、特定の一行だけ実行する方法
- 自動処理(レコード登録・更新パーツ)の「計算」チェックボックスの使い方と活用例
- 異なる得意先の受注を同一の「請求先」でまとめて請求データを作成する方法
- 自動処理を活用して承認機能を独自に構築する方法・設定手順
- 自動処理のメール送信でプロジェクトや取引内容に応じてCC宛先のみを動的に切り替える方法・マスタ構築手順
- CSVインポートや一括登録時に通知メールが大量送信されるのを防ぎ、完了時にまとめて通知する方法
- データベースをコピー(複製)した際に登録済みのレコードデータも引き継がれるか
- 異なるデータベース間でデータを自動で転記・登録する方法・設定手順
- 親DBの明細行の合計値と自レコード(子DB)の値を比較して自動処理を分岐させる方法・設定手順