Base Cancel Confirm

base_cancel_confirm
REPOSITORY
REPOSITORYOCA/server-ux
GIT
GIThttps://github.com/OCA/server-ux.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-ux/tree/19.0/base_cancel_confirm
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYUsability
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSJordiMForgeFlow, OCA-git-bot, oca-ci, JasminSForgeFlow
WEBSITE
WEBSITEhttps://github.com/OCA/server-ux
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:40:49
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Many document model that already has cancel action may also want a
confirm dialog with option to provide reason.

This module does not provide a functionality by itself but an abstract
model to easily implement a confirm with reason wizard when cancel
button is clicked. If reason is provided, it will be visible in form
view.

**Note:** To be able to use this module in a new model you will need
some development.

You can see implementation example as followings,

- [sale_cancel_confirm](https://github.com/OCA/sale-workflow)
- [purchase_cancel_confirm](https://github.com/OCA/purchase-workflow)
- [purchase_request_cancel_confirm](https://github.com/OCA/purchase-workflow)
- [account_move_cancel_confirm](https://github.com/OCA/account-invoicing)

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
cancel_reason_template cancel_reason_template ir.ui.view qweb New
view_cancel_confirm_wizard Cancel Confirmation cancel.confirm form New
Models touched (2)

New fields (2)
  • cancel_confirm Boolean
    copy=False default=<expr> help='A flag signify that this document is confirmed for cancellation' string='Cancel Confirmed'
  • cancel_reason Text
    copy=False help='An optional cancel reason'
Public methods (3)
  • clear_cancel_confirm_data(self)
  • get_view(self, view_id=None, view_type='form', **options)
  • open_cancel_confirm_wizard(self)

New fields (2)
  • cancel_reason Text
  • has_cancel_reason Selection
    default='no' required=True selection=[('no', 'None'), ('optional', 'Optional'), ('required', 'Required')]
Public methods (1)
  • confirm_cancel(self)
REPOSITORY
REPOSITORYOCA/server-ux
GIT
GIThttps://github.com/OCA/server-ux.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-ux/tree/18.0/base_cancel_confirm
VERSION
VERSION 1.0.3
CATEGORY
CATEGORYUsability
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSPedro M. Baeza, Weblate, OCA-git-bot, oca-ci, Saran440, theerayut
WEBSITE
WEBSITEhttps://github.com/OCA/server-ux
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:16
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Many document model that already has cancel action may also want a
confirm dialog with option to provide reason.

This module does not provide a functionality by itself but an abstract
model to easily implement a confirm with reason wizard when cancel
button is clicked. If reason is provided, it will be visible in form
view.

**Note:** To be able to use this module in a new model you will need
some development.

You can see implementation example as followings,

- [sale_cancel_confirm](https://github.com/OCA/sale-workflow)
- [purchase_cancel_confirm](https://github.com/OCA/purchase-workflow)
- [purchase_request_cancel_confirm](https://github.com/OCA/purchase-workflow)
- [account_move_cancel_confirm](https://github.com/OCA/account-invoicing)

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
cancel_reason_template cancel_reason_template ir.ui.view qweb New
view_cancel_confirm_wizard Cancel Confirmation cancel.confirm form New
Models touched (2)

New fields (2)
  • cancel_confirm Boolean
    copy=False default=<expr> help='A flag signify that this document is confirmed for cancellation' string='Cancel Confirmed'
  • cancel_reason Text
    copy=False help='An optional cancel reason'
Public methods (3)
  • clear_cancel_confirm_data(self)
  • get_view(self, view_id=None, view_type='form', **options)
  • open_cancel_confirm_wizard(self)

New fields (2)
  • cancel_reason Text
  • has_cancel_reason Selection
    default='no' required=True selection=[('no', 'None'), ('optional', 'Optional'), ('required', 'Required')]
Public methods (1)
  • confirm_cancel(self)
REPOSITORY
REPOSITORYOCA/server-ux
GIT
GIThttps://github.com/OCA/server-ux.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-ux/tree/17.0/base_cancel_confirm
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYUsability
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSJordiMForgeFlow, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/server-ux
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:08
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Many document model that already has cancel action may also want a
confirm dialog with option to provide reason.

This module does not provide a functionality by itself but an abstract
model to easily implement a confirm with reason wizard when cancel
button is clicked. If reason is provided, it will be visible in form
view.

**Note:** To be able to use this module in a new model you will need
some development.

You can see implementation example as followings,

- [sale_cancel_confirm](https://github.com/OCA/sale-workflow)
- [purchase_cancel_confirm](https://github.com/OCA/purchase-workflow)
- [purchase_request_cancel_confirm](https://github.com/OCA/purchase-workflow)
- [account_move_cancel_confirm](https://github.com/OCA/account-invoicing)

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
cancel_reason_template cancel_reason_template ir.ui.view qweb New
view_cancel_confirm_wizard Cancel Confirmation cancel.confirm form New
Models touched (2)

New fields (2)
  • cancel_confirm Boolean
    copy=False default=<expr> help='A flag signify that this document is confirmed for cancellation' string='Cancel Confirmed'
  • cancel_reason Text
    copy=False help='An optional cancel reason'
Public methods (3)
  • clear_cancel_confirm_data(self)
  • get_view(self, view_id=None, view_type='form', **options)
  • open_cancel_confirm_wizard(self)

New fields (2)
  • cancel_reason Text
  • has_cancel_reason Selection
    default='no' required=True selection=[('no', 'None'), ('optional', 'Optional'), ('required', 'Required')]
Public methods (1)
  • confirm_cancel(self)
REPOSITORY
REPOSITORYOCA/server-ux
GIT
GIThttps://github.com/OCA/server-ux.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-ux/tree/16.0/base_cancel_confirm
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYUsability
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSJordiMForgeFlow, Weblate, OCA-git-bot, oca-ci, aliciagarzo, Richard PALO
WEBSITE
WEBSITEhttps://github.com/OCA/server-ux
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:54
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
cancel_reason_template cancel_reason_template ir.ui.view qweb New
view_cancel_confirm_wizard Cancel Confirmation cancel.confirm form New
Models touched (2)

New fields (2)
  • cancel_confirm Boolean
    copy=False default=<expr> help='A flag signify that this document is confirmed for cancellation' string='Cancel Confirmed'
  • cancel_reason Text
    copy=False help='An optional cancel reason'
Public methods (3)
  • clear_cancel_confirm_data(self)
  • get_view(self, view_id=None, view_type='form', **options)
  • open_cancel_confirm_wizard(self)

New fields (2)
  • cancel_reason Text
  • has_cancel_reason Selection
    default='no' required=True selection=[('no', 'None'), ('optional', 'Optional'), ('required', 'Required')]
Public methods (1)
  • confirm_cancel(self)
REPOSITORY
REPOSITORYOCA/server-ux
GIT
GIThttps://github.com/OCA/server-ux.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-ux/tree/15.0/base_cancel_confirm
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYUsability
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Saran440
WEBSITE
WEBSITEhttps://github.com/OCA/server-ux
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:39
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
cancel_reason_template cancel_reason_template ir.ui.view qweb New
view_cancel_confirm_wizard Cancel Confirmation cancel.confirm form New
Models touched (2)

New fields (2)
  • cancel_confirm Boolean
    copy=False default=<expr> help='A flag signify that this document is confirmed for cancellation' string='Cancel Confirmed'
  • cancel_reason Text
    copy=False help='An optional cancel reason'
Public methods (3)
  • clear_cancel_confirm_data(self)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
  • open_cancel_confirm_wizard(self)

New fields (2)
  • cancel_reason Text
  • has_cancel_reason Selection
    default='no' required=True selection=[('no', 'None'), ('optional', 'Optional'), ('required', 'Required')]
Public methods (1)
  • confirm_cancel(self)
REPOSITORY
REPOSITORYOCA/server-ux
GIT
GIThttps://github.com/OCA/server-ux.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-ux/tree/14.0/base_cancel_confirm
VERSION
VERSION 1.1.0
CATEGORY
CATEGORYUsability
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSOCA Transbot, Sébastien Alix, oca-travis, Weblate, OCA-git-bot, oca-ci, Kitti U, newtratip, Saran440
WEBSITE
WEBSITEhttps://github.com/OCA/server-ux
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:07
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
cancel_reason_template cancel_reason_template ir.ui.view qweb New
view_cancel_confirm_wizard Cancel Confirmation cancel.confirm form New
Models touched (2)

New fields (2)
  • cancel_confirm Boolean
    copy=False default=<expr> help='A flag signify that this document is confirmed for cancellation' string='Cancel Confirmed'
  • cancel_reason Text
    copy=False help='An optional cancel reason' string='Cancel Reason'
Public methods (3)
  • clear_cancel_confirm_data(self)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
  • open_cancel_confirm_wizard(self)

New fields (2)
  • cancel_reason Text
    string='Cancel Reason'
  • has_cancel_reason Selection
    default='no' required=True selection=[('no', 'None'), ('optional', 'Optional'), ('required', 'Required')]
Public methods (1)
  • confirm_cancel(self)