Metadata-Version: 2.1
Name: odoo-addon-project_task_block_reason
Version: 18.0.1.0.0.1
Requires-Python: >=3.10
Requires-Dist: odoo==18.0.*
Summary: Introduce a reason when a task is blocked
Home-page: https://github.com/sygel-technology/sy-project
License: AGPL-3
Author: Sygel
Classifier: Programming Language :: Python
Classifier: Framework :: Odoo
Classifier: Framework :: Odoo :: 18.0
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Description-Content-Type: text/x-rst

.. image:: https://odoo-community.org/readme-banner-image
   :target: https://odoo-community.org/get-involved?utm_source=readme
   :alt: Odoo Community Association

=========================
Project Task Block Reason
=========================

.. 
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! This file is generated by oca-gen-addon-readme !!
   !! changes will be overwritten.                   !!
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! source digest: sha256:b91e59a3d3f90a74aa17b6bedeea77e6efae2273287fbdd90ce177cc6138f19f
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
    :target: https://odoo-community.org/page/development-status
    :alt: Beta
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
    :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
    :alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-sygel--technology%2Fsy--project-lightgray.png?logo=github
    :target: https://github.com/sygel-technology/sy-project/tree/18.0/project_task_block_reason
    :alt: sygel-technology/sy-project

|badge1| |badge2| |badge3|

This module allows you to block tasks and provide a reason when a task
is blocked.

The blocked reason will be displayed in the form, kanban and list view
of the tasks.

Blocking (or unblocking) a task also blocks (or unblocks) their children
tasks.

An example of the form view of a task:

|Example Form View|

Note: Odoo already has a task-blocking feature based on task
dependencies that can coexist with the blocking feature provided by this
module. On one hand, both blocking features share the same "waiting"
state to mark a task as blocked. On the other hand, this module provides
a manual task-blocking mechanism, while Odoo blocks tasks if they have
unfinished dependencies. If you have this module installed and task
dependencies enabled, a task may be blocked for either of these two
reasons.

.. |Example Form View| image:: https://raw.githubusercontent.com/sygel-technology/sy-project/18.0/project_task_block_reason/static/src/img/example_form.png

**Table of contents**

.. contents::
   :local:

Usage
=====

To use this module, you need to:

1. Go to the tasks in the Projects module
2. Open or create a new task.
3. Click on block and add a reason

Note: If you change the main state of a blocked task, the task gets
automatically unblocked by Odoo.

Known issues / Roadmap
======================

- Since v18, the behaviour of this module is different.

  The reason is that, in the base project module, the "kanban_state"
  field has been removed from the project.task model, and has been
  replaced with the "state" field, which does not longer contain the
  "blocked" value.

  The old "blocked" state came along with some UI customization to warn
  the user of that state. The new "waiting" state of the new v18 field
  has been used to replace this UI behaviour, as it can express the same
  as the old blocked state.

  A new button has been added to block tasks and assign that "waiting"
  state.

- The module’s manual blocking mechanism currently operates in parallel
  with Odoo’s native Blocked by feature.

  IMP: As a future improvement, it could be explored to better
  synchronize both mechanisms. For example, disabling or hiding the
  manual Block/Unblock actions when a task is already blocked by native
  dependencies, or automatically enabling/disabling the manual blocking
  state when blocking dependencies (depend_on_ids field) are added or
  removed.

  This could be considered only if it can be implemented without
  introducing excessive complexity or altering the current lightweight
  behavior of the module.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/sygel-technology/sy-project/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/sygel-technology/sy-project/issues/new?body=module:%20project_task_block_reason%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Sygel

Contributors
------------

- `Sygel <https://www.sygel.es>`__:

  - Manuel Regidor
  - Ángel García de la Chica Herrera
  - Alberto Martínez
  - Valentín Vinagre
  - Harald Panten

Maintainers
-----------

This module is part of the `sygel-technology/sy-project <https://github.com/sygel-technology/sy-project/tree/18.0/project_task_block_reason>`_ project on GitHub.

You are welcome to contribute.
