エラー処理器 Commitは、ジョブの実行中にエラーが発生したときに、それまでに完了した作業は維持し、エラー後の作業は中断するように設計された機能です。主にデータの整合性を保証し、正常に処理されたデータが失われないようにする必要がある場合に使用されます。

Commitの役割
- エラー前の作業維持
- エラーが発生するまで正常に完了した作業はデータベースに反映されます。
- 例:メールが正常に送信された場合、その後エラーが発生しても送信されたメールは維持されます。
- エラー後の作業中断
- エラーが発生した以降のステップは実行されません。
- 例:決済完了後、在庫更新中にエラーが発生した場合、決済は維持されますが、在庫更新は実行されません。
- データ保存
- 重要なデータが既に処理された場合、これを復元せずにそのまま維持します。
- 例:顧客記録が一部保存されていても、残りの作業は中断。
Commitを使用しなければならない状況
1. データの整合性を維持する必要がある場合
- すでに正常に処理されたデータを元に戻さずに維持する必要がある場合。
- 例:メール送信、決済承認など。
2. 中間結果を保存する必要がある場合
- 一部の成功した作業が次のステップと独立している場合。
- 例:顧客メールが送信された後、データベースの保存中にエラーが発生した場合。
3. 部分的な成功が許容される場合
- 全ての作業が成功しなくても、前の作業の結果が役に立つ場合。
- 例:大量データ処理中、一部のデータのみ正常に処理された場合。
Commitの実際の使用事例
例1:メール送信後、データベース保存エラーが発生した場合
- 作業フロー:
- 顧客にメール送信 → メール送信履歴をデータベースに保存。
- エラー状況:
- メール送信成功後、データベース保存中にエラーが発生。
- Commit動作:
- メールは既に送信されたのでそのまま維持。
- データベースの保存は失敗したため、以降のステップは中断。
例2: 決済承認後の在庫の更新エラー
- 作業フロー:
- 顧客決済処理 → 在庫更新 → 注文確認メール送信。
- エラー状況:
- 在庫更新中にエラーが発生。
- Commit動作:
- 決済は正常に完了したので維持。
- 在庫更新は失敗し、注文確認メールも送信されない。
例3:データ同期システム
- ワークフロー:
- 外部データベースからデータをインポート → 内部システムに同期。
- エラー状況:
- データ一部同期後、ネットワークエラーで中断。
- Commit動作:
- 同期されたデータは維持され、残りのデータは同期されない。
Commitの設定方法(Make.comで)

- エラーハンドラの追加:
- Make.comのワークフロー編集画面で、エラーが発生する可能性があるモジュールを選択します。
- そのモジュールにエラーハンドラを追加します。
- Commitオプション選択:
- エラーハンドラで「Commit」オプションを選択します。
- これにより、以前の作業結果を維持するように設定します。
- 保存とテスト:
- 設定を完了した後、シナリオをテストしてエラー発生時、Commitが正しく動作することを確認します。
Commitを使う時の注意事項
- データ依存性の確認
- 前の作業結果が次のステップと独立していることを確認してください。
- 依存性が高い作業ではRollbackの方が適しているかもしれません。
- データ損失防止
- Commit設定が間違っていると、意図しないデータ損失が発生する可能性があるので注意してください。
- 作業記録の維持
- Commit後も作業ログを記録して問題を分析できるように設定します。
Commitの概要
項目 | 説明 |
---|---|
役割 | エラー発生時、以前の作業を維持し、その後の作業を中断します。 |
使用事例 | メール送信後のデータベース保存失敗、決済承認後の在庫更新エラーなど。 |
注意事項 | データの依存関係を確認し、意図しないデータ損失が発生しないように設定します。 |
使用例 | 顧客へのメール送信成功後のデータベース保存失敗、在庫更新失敗時の決済情報保持。 |
Commitは、データの整合性を維持しながら 中間作業の結果を保存する必要がある状況で非常に便利です。 特にMake.comのような自動化プラットフォームで設定しやすく、効率的にエラーを処理できる強力なオプションです。