odoo14-addon-project-forecast-line


Nameodoo14-addon-project-forecast-line JSON
Version 14.0.1.0.5 PyPI version JSON
download
home_pagehttps://github.com/OCA/project
SummaryProject Forecast Lines
upload_time2024-12-06 09:55:12
maintainerNone
docs_urlNone
authorCamptocamp, Odoo Community Association (OCA)
requires_python>=3.6
licenseAGPL-3
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ======================
Project Forecast Lines
======================

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

.. |badge1| image:: https://img.shields.io/badge/maturity-Alpha-red.png
    :target: https://odoo-community.org/page/development-status
    :alt: Alpha
.. |badge2| image:: https://img.shields.io/badge/licence-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-OCA%2Fproject-lightgray.png?logo=github
    :target: https://github.com/OCA/project/tree/14.0/project_forecast_line
    :alt: OCA/project
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
    :target: https://translation.odoo-community.org/projects/project-14-0/project-14-0-project_forecast_line
    :alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
    :target: https://runboat.odoo-community.org/builds?repo=OCA/project&target_branch=14.0
    :alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module allows to plan your resources using forecast lines.

For each employee of the company, the module will generate forecast line
records with a positive capacity based on their working time schedules. Then,
tasks assigned to employees will generate forecast lines with a negative
capacity which will "consume" the work time capacity of the employees.

The idea is that you can then see the work capacity and scheduled work of
people by summing the "forecasts" per time period. If you have more resources
(positive forecast) than work (negative forecast) you will have a positive net
sum. Otherwise you are in trouble and need to recruit or reschedule your
work. Another way to use the report is checking when the work capacity of a
department becomes positive (or high enough) in order to provide you potential
customers with an estimate of when a project would be able to start.

Forecast lines also come in two states "forecast" or "confirmed", depending on
whether the consumption is confirmed or not. For instance, holidays requests
and sales quotation lines create lines of type "forecast", whereas tasks for
project which are in a running state create lines with type "confirmed".

To get the best experience using the Forecast application you may want to install:

* project_forecast_line_holidays_public module which takes public holidays into
  account during forecast lines creation

* project_forecast_line_bokeh_chart module which improves the reports of
  project_forecast_line module by using the bokeh widget available in OCA/web

.. IMPORTANT::
   This is an alpha version, the data model and design can change at any time without warning.
   Only for development or testing purpose, do not use in production.
   `More details on development status <https://odoo-community.org/page/development-status>`_

**Table of contents**

.. contents::
   :local:

Usage
=====

Forecast lines have the following data:

* Forecast hours: it is positive for resources (employees) and negative for
  things which consume time (project tasks, for instance)

* From and To date which are the beginning and ending of the period of the
  capacity

* Consolidated forecast: this is a computed field, which is computed as follows:

  * for costs (project tasks for instance) we take the absolute value of the
    forecast hours (so it is a positive number)

  * for resources (employee capacity for a period), we take the capacity and
    substract all the costs for that employee on the same period. So it will be
    positive if the employee still has some free time, and negative if he is
    overloaded with work.

  * this consolidated forecast is currently converted to days to ease
    readability of the forecast report


Objects creating forecast lines:

* employees with a forecast role will create forecast line with a positive
  capacity and type "confirmed" for each day on which they work. This
  information comes from their work calendar, and the different roles that are
  linked to the employee.

* draft sale orders (if enabled in the settings) will create forecast lines of
  type "forecast" for each sale order line having a product with a forecast
  role and start and end dates. The forecast hours are negative

* confirmed sale orders don't create forecast lines. This is handled by the
  tasks created at the confirmation of the sale order

* project tasks create forecast lines if they have a linked role and planned start/end
  dates. The type of the line will depend on the related project's stage. The
  `forecast_hours` field is based on the remaining time of the task, which is spread
  on the work days of the planned start and end date of the task. If the
  current date is in the middle of the planned duration of the task, it is used
  as the start date. If the planned end date is in the past the task does not
  generate forecast lines (and you need to fix your planning). In case multiple
  employees are assigned to the task the forecast is split equally between
  them.

* holiday requests create negative forecast lines with type "forecast" when
  they are pending manager validation.

* Validated holiday requests do not generate forecast lines, as they alter the
  work calendar of the employee: the employee will not have a positive line
  associated to his leave days.

The creation of forecast lines is done either in real time when some actions
are performed by the user (requesting leaves, updating the remaining time on a
project task, timesheeting) and also via a cron that runs on a daily basis. The
cron is required to cleanup lines related to dates in the past and to recompute
the lines related to project tasks by computing the ratio of remaing time on
the tasks on the remaining days, for tasks which are in progress. So, to start
using consolidated forecast report you first need to set everything mentioned
in Usage section. Then, probably run Forecast recomputation cron manually from
Scheduled Actions or wait till cron creates records.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/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/OCA/project/issues/new?body=module:%20project_forecast_line%0Aversion:%2014.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
~~~~~~~

* Camptocamp

Contributors
~~~~~~~~~~~~

* Alexandre Fayolle <alexandre.fayolle@camptocamp.com>
* Maksym Yankin <maksym.yankin@camptocamp.com>

Maintainers
~~~~~~~~~~~

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
   :alt: Odoo Community Association
   :target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

.. |maintainer-ntsirintanis| image:: https://github.com/ntsirintanis.png?size=40px
    :target: https://github.com/ntsirintanis
    :alt: ntsirintanis

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-ntsirintanis| 

This module is part of the `OCA/project <https://github.com/OCA/project/tree/14.0/project_forecast_line>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/OCA/project",
    "name": "odoo14-addon-project-forecast-line",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": null,
    "author": "Camptocamp, Odoo Community Association (OCA)",
    "author_email": "support@odoo-community.org",
    "download_url": null,
    "platform": null,
    "description": "======================\nProject Forecast Lines\n======================\n\n.. \n   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n   !! This file is generated by oca-gen-addon-readme !!\n   !! changes will be overwritten.                   !!\n   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n   !! source digest: sha256:8a71412da634c47ce36f2dfb559d352ce4c05861a0659237ef47baac1095ff8b\n   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n\n.. |badge1| image:: https://img.shields.io/badge/maturity-Alpha-red.png\n    :target: https://odoo-community.org/page/development-status\n    :alt: Alpha\n.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png\n    :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html\n    :alt: License: AGPL-3\n.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fproject-lightgray.png?logo=github\n    :target: https://github.com/OCA/project/tree/14.0/project_forecast_line\n    :alt: OCA/project\n.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png\n    :target: https://translation.odoo-community.org/projects/project-14-0/project-14-0-project_forecast_line\n    :alt: Translate me on Weblate\n.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png\n    :target: https://runboat.odoo-community.org/builds?repo=OCA/project&target_branch=14.0\n    :alt: Try me on Runboat\n\n|badge1| |badge2| |badge3| |badge4| |badge5|\n\nThis module allows to plan your resources using forecast lines.\n\nFor each employee of the company, the module will generate forecast line\nrecords with a positive capacity based on their working time schedules. Then,\ntasks assigned to employees will generate forecast lines with a negative\ncapacity which will \"consume\" the work time capacity of the employees.\n\nThe idea is that you can then see the work capacity and scheduled work of\npeople by summing the \"forecasts\" per time period. If you have more resources\n(positive forecast) than work (negative forecast) you will have a positive net\nsum. Otherwise you are in trouble and need to recruit or reschedule your\nwork. Another way to use the report is checking when the work capacity of a\ndepartment becomes positive (or high enough) in order to provide you potential\ncustomers with an estimate of when a project would be able to start.\n\nForecast lines also come in two states \"forecast\" or \"confirmed\", depending on\nwhether the consumption is confirmed or not. For instance, holidays requests\nand sales quotation lines create lines of type \"forecast\", whereas tasks for\nproject which are in a running state create lines with type \"confirmed\".\n\nTo get the best experience using the Forecast application you may want to install:\n\n* project_forecast_line_holidays_public module which takes public holidays into\n  account during forecast lines creation\n\n* project_forecast_line_bokeh_chart module which improves the reports of\n  project_forecast_line module by using the bokeh widget available in OCA/web\n\n.. IMPORTANT::\n   This is an alpha version, the data model and design can change at any time without warning.\n   Only for development or testing purpose, do not use in production.\n   `More details on development status <https://odoo-community.org/page/development-status>`_\n\n**Table of contents**\n\n.. contents::\n   :local:\n\nUsage\n=====\n\nForecast lines have the following data:\n\n* Forecast hours: it is positive for resources (employees) and negative for\n  things which consume time (project tasks, for instance)\n\n* From and To date which are the beginning and ending of the period of the\n  capacity\n\n* Consolidated forecast: this is a computed field, which is computed as follows:\n\n  * for costs (project tasks for instance) we take the absolute value of the\n    forecast hours (so it is a positive number)\n\n  * for resources (employee capacity for a period), we take the capacity and\n    substract all the costs for that employee on the same period. So it will be\n    positive if the employee still has some free time, and negative if he is\n    overloaded with work.\n\n  * this consolidated forecast is currently converted to days to ease\n    readability of the forecast report\n\n\nObjects creating forecast lines:\n\n* employees with a forecast role will create forecast line with a positive\n  capacity and type \"confirmed\" for each day on which they work. This\n  information comes from their work calendar, and the different roles that are\n  linked to the employee.\n\n* draft sale orders (if enabled in the settings) will create forecast lines of\n  type \"forecast\" for each sale order line having a product with a forecast\n  role and start and end dates. The forecast hours are negative\n\n* confirmed sale orders don't create forecast lines. This is handled by the\n  tasks created at the confirmation of the sale order\n\n* project tasks create forecast lines if they have a linked role and planned start/end\n  dates. The type of the line will depend on the related project's stage. The\n  `forecast_hours` field is based on the remaining time of the task, which is spread\n  on the work days of the planned start and end date of the task. If the\n  current date is in the middle of the planned duration of the task, it is used\n  as the start date. If the planned end date is in the past the task does not\n  generate forecast lines (and you need to fix your planning). In case multiple\n  employees are assigned to the task the forecast is split equally between\n  them.\n\n* holiday requests create negative forecast lines with type \"forecast\" when\n  they are pending manager validation.\n\n* Validated holiday requests do not generate forecast lines, as they alter the\n  work calendar of the employee: the employee will not have a positive line\n  associated to his leave days.\n\nThe creation of forecast lines is done either in real time when some actions\nare performed by the user (requesting leaves, updating the remaining time on a\nproject task, timesheeting) and also via a cron that runs on a daily basis. The\ncron is required to cleanup lines related to dates in the past and to recompute\nthe lines related to project tasks by computing the ratio of remaing time on\nthe tasks on the remaining days, for tasks which are in progress. So, to start\nusing consolidated forecast report you first need to set everything mentioned\nin Usage section. Then, probably run Forecast recomputation cron manually from\nScheduled Actions or wait till cron creates records.\n\nBug Tracker\n===========\n\nBugs are tracked on `GitHub Issues <https://github.com/OCA/project/issues>`_.\nIn case of trouble, please check there if your issue has already been reported.\nIf you spotted it first, help us to smash it by providing a detailed and welcomed\n`feedback <https://github.com/OCA/project/issues/new?body=module:%20project_forecast_line%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.\n\nDo not contact contributors directly about support or help with technical issues.\n\nCredits\n=======\n\nAuthors\n~~~~~~~\n\n* Camptocamp\n\nContributors\n~~~~~~~~~~~~\n\n* Alexandre Fayolle <alexandre.fayolle@camptocamp.com>\n* Maksym Yankin <maksym.yankin@camptocamp.com>\n\nMaintainers\n~~~~~~~~~~~\n\nThis module is maintained by the OCA.\n\n.. image:: https://odoo-community.org/logo.png\n   :alt: Odoo Community Association\n   :target: https://odoo-community.org\n\nOCA, or the Odoo Community Association, is a nonprofit organization whose\nmission is to support the collaborative development of Odoo features and\npromote its widespread use.\n\n.. |maintainer-ntsirintanis| image:: https://github.com/ntsirintanis.png?size=40px\n    :target: https://github.com/ntsirintanis\n    :alt: ntsirintanis\n\nCurrent `maintainer <https://odoo-community.org/page/maintainer-role>`__:\n\n|maintainer-ntsirintanis| \n\nThis module is part of the `OCA/project <https://github.com/OCA/project/tree/14.0/project_forecast_line>`_ project on GitHub.\n\nYou are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.\n",
    "bugtrack_url": null,
    "license": "AGPL-3",
    "summary": "Project Forecast Lines",
    "version": "14.0.1.0.5",
    "project_urls": {
        "Homepage": "https://github.com/OCA/project"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e6d8e4f9721bbdfea26aa6400364eccc0809289639148175bc6d2672ee7dd747",
                "md5": "78542897dd4505d467beca4f637cb8e6",
                "sha256": "ccd67cd1d8e7906ccbe9b7ad97c1c403945c9dde53d6d225150076caf8690b8e"
            },
            "downloads": -1,
            "filename": "odoo14_addon_project_forecast_line-14.0.1.0.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "78542897dd4505d467beca4f637cb8e6",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 74640,
            "upload_time": "2024-12-06T09:55:12",
            "upload_time_iso_8601": "2024-12-06T09:55:12.638089Z",
            "url": "https://files.pythonhosted.org/packages/e6/d8/e4f9721bbdfea26aa6400364eccc0809289639148175bc6d2672ee7dd747/odoo14_addon_project_forecast_line-14.0.1.0.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-06 09:55:12",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "OCA",
    "github_project": "project",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "odoo14-addon-project-forecast-line"
}
        
Elapsed time: 0.41592s