diff --git a/project/advanced/media/so_to_task01.png b/project/advanced/media/so_to_task01.png new file mode 100644 index 000000000..16df19331 Binary files /dev/null and b/project/advanced/media/so_to_task01.png differ diff --git a/project/advanced/media/so_to_task02.png b/project/advanced/media/so_to_task02.png new file mode 100644 index 000000000..0f248c488 Binary files /dev/null and b/project/advanced/media/so_to_task02.png differ diff --git a/project/advanced/media/so_to_task03.png b/project/advanced/media/so_to_task03.png new file mode 100644 index 000000000..1b54e74ab Binary files /dev/null and b/project/advanced/media/so_to_task03.png differ diff --git a/project/advanced/media/so_to_task04.png b/project/advanced/media/so_to_task04.png new file mode 100644 index 000000000..ffd32ae9b Binary files /dev/null and b/project/advanced/media/so_to_task04.png differ diff --git a/project/advanced/media/so_to_task05.png b/project/advanced/media/so_to_task05.png new file mode 100644 index 000000000..ecab10e60 Binary files /dev/null and b/project/advanced/media/so_to_task05.png differ diff --git a/project/advanced/media/so_to_task06.png b/project/advanced/media/so_to_task06.png new file mode 100644 index 000000000..a92e5eb9d Binary files /dev/null and b/project/advanced/media/so_to_task06.png differ diff --git a/project/advanced/so_to_task.rst b/project/advanced/so_to_task.rst index a147f160f..94d67b89a 100644 --- a/project/advanced/so_to_task.rst +++ b/project/advanced/so_to_task.rst @@ -1,3 +1,115 @@ ====================================== How to create tasks from sales orders? -====================================== \ No newline at end of file +====================================== + +In this section, we will see the integration between Odoo's **Project +management** and **Sales** modules and more precisely how to generate tasks +from sales order lines. + +In project management, a task is an activity that needs to be +accomplished within a defined period of time. For a company selling +services, the task typically represents the service that has been sold +to the customer and that needs to be delivered. This is why it is useful +to be able to generate a task from a sale order in order to streamline +the process between the Sales and Services departments. + +As an example, you may sell a pack of ``50 Hours`` of support at ``$25,000``. +The price is fixed and charged initially. But you want to keep track of +the support service you did for the customer. On the sale order, the +service will trigger the creation of a task from which the consultant +will record timesheets and, if needed, reinvoice the client according to +the overtime spent on the project. + +Configuration +============= + +Install the required applications +--------------------------------- + +In order to be able to generate a task from a sale order you will need +to install the **Sales Management** and **Project** application. Simply go into +the application module and install the following: + +.. image:: media/so_to_task01.png + :align: center + +.. image:: media/so_to_task02.png + :align: center + +Moreover if you wish to be able to invoice your customers based on time +spent on the task, it is also necessary to install the **Timesheet** module. +Simply go into the application module and install the following: + +.. image:: media/so_to_task03.png + :align: center + +Create and set up a product +=========================== + +You need to configure your service on the product form itself in order +to generate a task every time it will be sold. From the **Sales** module, +use the menu :menuselection:`Sales --> Products` and create a new +product with the`following setup: + +- **Name**: Technical Support + +- **Product Type**: Service + +- **Unit of Measure**: Hours (go to :menuselection:`Configuration --> Settings` + and, under **Unit of measures**, check the **Some products may be + sold/purchased in different unit of measures (advanced)** radio + button) + +- **Invoicing policy**: You can set up your invoice policy either on + ordered quantity or on delivered quantity. You can easily follow + the amount of hours that were delivered and/or invoiced to your + client. + +- **Track Service**: Create a task and track hours, as your product + is a service invoiceable by hours you have to set the units of + measures of the product to hours as well. + +.. image:: media/so_to_task04.png + :align: center + +.. note:: + Link your task to an existing project or create a new one on the fly if + the product is specific to one project. Otherwise, you can leave it + blank, odoo will then create a project per SO. + +Create the Sales Order +====================== + +Once the product is set up, you can create a quotation or a sale order +with the related product. Once the quotation is confirmed and +transformed into a sale order, the task will be created. + +.. image:: media/so_to_task05.png + :align: center + +Access the task generated from the sale order +============================================= + +On the Project module, your new task will appear : + +- either on a related project if you have selected one in the product + form + +- either on a new project with the name of related the sale order as + title (you can easily change the name of the project by clicking + on :menuselection:`More --> Settings`) + +.. image:: media/so_to_task06.png + :align: center + +On the task itself, you will now be able to record timesheets and to +invoice your customers based on your invoicing policy. + +.. note:: + On Odoo, the central document is the sales order, which means that + the source document of the task is the related sales order. + +.. seealso:: + * :doc:`../configuration/setup` + * :doc:`../../sales/invoicing/services/reinvoice` + * :doc:`../../sales/invoicing/services/support` \ No newline at end of file