基本情報
- モジュール名: purchase_exception
- ライセンス: AGPL-3
- オーサー: Akretion
- レポジトリ: https://github.com/OCA/purchase-workflow
- 利用可能バージョン (2025年3月時点): 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0
利用用途
purchase_exceptionを使うことで設定された条件をもとにPOオーダ確認時にエラーを出すことができます。POに紐づくフィールドを使い柔軟に条件を設定することができるので、カスタマイズ性が高く、実際の運用に基づき間違ったPOがオーダ確認されないように設定を調整できます。例えば同じ顧客に対するPOが二つ以上ドラフト状態の時はエラーを出し、エラーメッセージでそれらのPOをまとめるよう指示することもできます。また、これらのエラーを無視してオーダ確認を実行することができるユーザを設定することもできます。
条件設定に基づきオーダ確認を止める仕様はbase_exceptionという依存先のモジュールで実装されております。base_exceptionを依存対象とするモジュールは他にもsale_exception、crm_exceptionなどがありそれらのモジュールでも同様にエラーを出すことができます。
設定方法
Exception manager グループへのユーザ追加方法
Exception managerはbase_exceptionモジュールをインストールすると作られるグループです。エラーの条件やそのエラーを無視する権限を持つユーザが所属する必要があります。開発者モードをオンにした状態で[管理設定 > ユーザと会社 > グループ > Exception manager]を開き、ユーザ欄にユーザを追加することで権限を与えることができます。
Purchase Exception Rulesの設定方法
Purchase Exception RulesとはPO確認時にエラーを出す条件のことです。開発者モードをオンにした状態で[購買 > 設定 > Purchase Exception Rules] からPurchase Exception Ruleを作成・編集することができます。Exception managerに参加していないユーザはここにあるPurchase Exception Rules を見ることはできますが、作成・編集することができません。
Purchase Exception Rulesの設定項目
- Exception Name: エラー名
- 説明: エラーが出た時に表示される説明
- Apply on: Exception Ruleが動くモデル
- Exception Type: エラー条件設定方法。By domain, By python code, By methodがある
- Activate: 右上の箱のようなボタン。このException Ruleを使用するかどうか設定できる
機能説明
Exception Ruleで設定した条件に合致したPOのオーダ確認時にエラーが発生します。
Exception managerに所属したユーザにはIgnore Exceptionという項目が表示されます。このチェックを付けた状態でCloseを押すとエラーを無視してオーダ確認を実行することができます。
このチェックを付けていない状態でCloseを押すとオーダ確認は実行されず、元の状態のままになります。