Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ addon | version | maintainers | summary
[sale_invoice_blocking](sale_invoice_blocking/) | 16.0.1.0.1 | | Allow you to block the creation of invoices from a sale order.
[sale_invoice_frequency](sale_invoice_frequency/) | 16.0.1.2.1 | <a href='https://github.com/Shide'><img src='https://github.com/Shide.png' width='32' height='32' style='border-radius:50%;' alt='Shide'/></a> <a href='https://github.com/yajo'><img src='https://github.com/yajo.png' width='32' height='32' style='border-radius:50%;' alt='yajo'/></a> <a href='https://github.com/EmilioPascual'><img src='https://github.com/EmilioPascual.png' width='32' height='32' style='border-radius:50%;' alt='EmilioPascual'/></a> | Define the invoice frequency for customers
[sale_invoice_plan](sale_invoice_plan/) | 16.0.1.0.0 | <a href='https://github.com/kittiu'><img src='https://github.com/kittiu.png' width='32' height='32' style='border-radius:50%;' alt='kittiu'/></a> | Add to sales order, ability to manage future invoice plan
[sale_invoice_policy](sale_invoice_policy/) | 16.0.3.0.0 | | Sales Management: let the user choose the invoice policy on the order
[sale_invoice_policy](sale_invoice_policy/) | 16.0.2.0.0 | | Sales Management: let the user choose the invoice policy on the order
[sale_invoice_split_payment](sale_invoice_split_payment/) | 16.0.1.0.0 | | Split by payment term generated invoices from sale orders
[sale_last_price_info](sale_last_price_info/) | 16.0.1.0.0 | | Product Last Price Info - Sale
[sale_loyalty_exclude](sale_loyalty_exclude/) | 16.0.1.1.0 | | Exclude products from sale loyalty program
Expand Down
1 change: 0 additions & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
# generated from manifests external_dependencies
openupgradelib
56 changes: 7 additions & 49 deletions sale_invoice_policy/README.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

===================
Sale invoice Policy
===================
Expand All @@ -11,13 +7,13 @@ Sale invoice Policy
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:cc274081b5e134e2166c780e74e08a4f4433eea4649c258bc78e7899c0f4614c
!! source digest: sha256:c97ec053f6a06fcb824861d16be9e31cc8a53549f47a0f38b6f54f534d09138b
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |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
.. |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%2Fsale--workflow-lightgray.png?logo=github
Expand All @@ -32,58 +28,21 @@ Sale invoice Policy

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

This module adds an invoicing policy on sale order level in order to
apply that invoicing policy on the whole sale order.

That invoicing policy can take three values:

- Products Invoicing Policy: The sale order will follow the standard
behavior and apply the policy depending on products configurations.
- Ordered Quantities: The sale order will invoice the ordered quantities.
- Delivered Quantities: The sale order will invoice the delivered quantities.

Following the chosen policy, the quantity to invoice and the
amount to invoice on each line will be computed accordingly.
Note that the sale order policy will affect only storable products.

You will be able also to define a default invoicing policy
(globally per company)
that can be different than the default invoicing policy for new products.
This modules helps to get Invoicing Policy on Sale Order Level without
breaking behaviour (as it is defined from >= v10 on product level).

**Table of contents**

.. contents::
:local:

Use Cases / Context
===================

In Odoo, products have their own invoicing policy that can be:

- Invoicing on ordered quantities
- Invoicing on ordered quantities

Following that configuration, when trying to create invoices from
sale orders, each line of product will apply its invoicing policy.

In some cases, user needs to apply an invoicing policy on a whole
sale order.

The solution proposed here is to add an invoicing policy on
sale order level.

Configuration
=============

* Go to Sale > Configuration > Settings > Sale Invoice Policy
* Choose the one that fits your needs.

Usage
=====

* Create Sale Order
* Select Invoicing Policy on Sale Order or let it on Products Invoicing Policy
* The created invoices will use the configuration on sale order.
* Select Invoicing Policy on Sale Order or let it void
* Either the policy selected on Sale Order would be used, either if not
filled in, the policy would be chosen from product configuration

Bug Tracker
===========
Expand Down Expand Up @@ -113,7 +72,6 @@ Contributors
* Luis J. Salvatierra <luis.salvatierra@factorlibre.com>
* Alejandro Ji Cheung <alejandro.jicheung@factorlibre.com>
* Ioan Galan <ioan@studio73.es>
* Laurent Mignon <laurent.mignon@acsone.eu>

Maintainers
~~~~~~~~~~~
Expand Down
1 change: 0 additions & 1 deletion sale_invoice_policy/__init__.py
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
from .hooks import pre_init_hook
from . import models
6 changes: 2 additions & 4 deletions sale_invoice_policy/__manifest__.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,11 @@
"author": "ACSONE SA/NV, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/sale-workflow",
"category": "Sales Management",
"version": "16.0.3.0.0",
"version": "16.0.2.0.0",
"license": "AGPL-3",
"depends": ["sale_stock", "base_partition"],
"external_dependencies": {"python": ["openupgradelib"]},
"depends": ["sale_stock"],
"data": [
"views/res_config_settings_view.xml",
"views/sale_view.xml",
],
"pre_init_hook": "pre_init_hook",
}
25 changes: 0 additions & 25 deletions sale_invoice_policy/hooks.py

This file was deleted.

74 changes: 22 additions & 52 deletions sale_invoice_policy/i18n/ca.po
Original file line number Diff line number Diff line change
Expand Up @@ -16,25 +16,12 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.10\n"

#. module: sale_invoice_policy
#: model_terms:ir.ui.view,arch_db:sale_invoice_policy.view_sales_config
msgid ""
"<span>Choose the default policy that will be applied for new sale orders "
"(the 'Invoicing Policy' configuration is the policy for new products).</span>"
msgstr ""

#. module: sale_invoice_policy
#: model:ir.model,name:sale_invoice_policy.model_res_company
msgid "Companies"
msgstr ""

#. module: sale_invoice_policy
#: model:ir.model,name:sale_invoice_policy.model_res_config_settings
msgid "Config Settings"
msgstr "Configuració"

#. module: sale_invoice_policy
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__res_company__sale_default_invoice_policy__delivery
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__sale_order__invoice_policy__delivery
msgid "Delivered quantities"
msgstr "Quantitats entregades"
Expand All @@ -44,37 +31,42 @@ msgstr "Quantitats entregades"
msgid "Invoice Policy"
msgstr "Política de Facturació"

#. module: sale_invoice_policy
#: model:ir.model.fields,field_description:sale_invoice_policy.field_sale_order__invoice_policy_required
msgid "Invoice Policy Required"
msgstr "Política de Facturació"

#. module: sale_invoice_policy
#: model_terms:ir.ui.view,arch_db:sale_invoice_policy.view_sales_config
msgid "Invoice Policy required in Sale Orders"
msgstr "Política de Facturació"

#. module: sale_invoice_policy
#: model:ir.model.fields,help:sale_invoice_policy.field_sale_order__invoice_policy
msgid ""
"Ordered Quantity: Invoice based on the quantity the customer ordered.\n"
"Delivered Quantity: Invoiced based on the quantity the vendor delivered "
"(time or deliveries). This applies for storable products only."
"(time or deliveries)."
msgstr ""
"Quantitat demanada: Factura basada en la quantitat demanada pel client.\n"
"Quantitat entregada: Factura basada en funció de la quantitat entregada pel "
"proveïdor ( temps o entregues)."

#. module: sale_invoice_policy
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__res_company__sale_default_invoice_policy__order
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__sale_order__invoice_policy__order
msgid "Ordered quantities"
msgstr "Quantitats Demanades"

#. module: sale_invoice_policy
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__res_company__sale_default_invoice_policy__product
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__sale_order__invoice_policy__product
msgid "Products Invoice Policy"
msgstr ""

#. module: sale_invoice_policy
#: model:ir.model.fields,field_description:sale_invoice_policy.field_res_company__sale_default_invoice_policy
#: model:ir.model.fields,field_description:sale_invoice_policy.field_res_config_settings__sale_default_invoice_policy
msgid "Sale Default Invoice Policy"
msgstr ""

#. module: sale_invoice_policy
#: model_terms:ir.ui.view,arch_db:sale_invoice_policy.view_sales_config
msgid "Sale Invoice Policy"
msgstr ""

#. module: sale_invoice_policy
#: model:ir.model.fields,field_description:sale_invoice_policy.field_res_config_settings__sale_invoice_policy_required
msgid "Sale Invoice Policy Required"
msgstr "Política de Facturació"

#. module: sale_invoice_policy
#: model:ir.model,name:sale_invoice_policy.model_sale_order
msgid "Sales Order"
Expand All @@ -86,31 +78,9 @@ msgid "Sales Order Line"
msgstr "Línia de comanda de venda"

#. module: sale_invoice_policy
#: model:ir.model.fields,help:sale_invoice_policy.field_res_company__sale_default_invoice_policy
#: model:ir.model.fields,help:sale_invoice_policy.field_res_config_settings__sale_default_invoice_policy
msgid "This will be the default invoice policy for sale orders."
msgstr ""

#~ msgid "Invoice Policy Required"
#~ msgstr "Política de Facturació"

#~ msgid "Invoice Policy required in Sale Orders"
#~ msgstr "Política de Facturació"

#~ msgid ""
#~ "Ordered Quantity: Invoice based on the quantity the customer ordered.\n"
#~ "Delivered Quantity: Invoiced based on the quantity the vendor delivered "
#~ "(time or deliveries)."
#~ msgstr ""
#~ "Quantitat demanada: Factura basada en la quantitat demanada pel client.\n"
#~ "Quantitat entregada: Factura basada en funció de la quantitat entregada "
#~ "pel proveïdor ( temps o entregues)."

#~ msgid "Sale Invoice Policy Required"
#~ msgstr "Política de Facturació"

#~ msgid "This makes Invoice Policy required on Sale Orders"
#~ msgstr "La política de facturació és necessària a les comandes de venda"
#: model:ir.model.fields,help:sale_invoice_policy.field_res_config_settings__sale_invoice_policy_required
msgid "This makes Invoice Policy required on Sale Orders"
msgstr "La política de facturació és necessària a les comandes de venda"

#~ msgid "Default Invoicing Policy"
#~ msgstr "Política de Facturació"
Expand Down
76 changes: 22 additions & 54 deletions sale_invoice_policy/i18n/es.po
Original file line number Diff line number Diff line change
Expand Up @@ -16,25 +16,12 @@ msgstr ""
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: sale_invoice_policy
#: model_terms:ir.ui.view,arch_db:sale_invoice_policy.view_sales_config
msgid ""
"<span>Choose the default policy that will be applied for new sale orders "
"(the 'Invoicing Policy' configuration is the policy for new products).</span>"
msgstr ""

#. module: sale_invoice_policy
#: model:ir.model,name:sale_invoice_policy.model_res_company
msgid "Companies"
msgstr ""

#. module: sale_invoice_policy
#: model:ir.model,name:sale_invoice_policy.model_res_config_settings
msgid "Config Settings"
msgstr "Opciones de configuración"

#. module: sale_invoice_policy
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__res_company__sale_default_invoice_policy__delivery
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__sale_order__invoice_policy__delivery
msgid "Delivered quantities"
msgstr "Cantidades entregadas"
Expand All @@ -44,37 +31,42 @@ msgstr "Cantidades entregadas"
msgid "Invoice Policy"
msgstr "Política de facturación"

#. module: sale_invoice_policy
#: model:ir.model.fields,field_description:sale_invoice_policy.field_sale_order__invoice_policy_required
msgid "Invoice Policy Required"
msgstr "Política de facturación requerida"

#. module: sale_invoice_policy
#: model_terms:ir.ui.view,arch_db:sale_invoice_policy.view_sales_config
msgid "Invoice Policy required in Sale Orders"
msgstr "Política de facturación requerida en pedidos de venta"

#. module: sale_invoice_policy
#: model:ir.model.fields,help:sale_invoice_policy.field_sale_order__invoice_policy
msgid ""
"Ordered Quantity: Invoice based on the quantity the customer ordered.\n"
"Delivered Quantity: Invoiced based on the quantity the vendor delivered "
"(time or deliveries). This applies for storable products only."
"(time or deliveries)."
msgstr ""
"Cantidad pedida: facturada en función de la cantidad pedida por el cliente.\n"
"Cantidad entregada: facturada en función de la cantidad entregada por el "
"proveedor (tiempo o entregas)."

#. module: sale_invoice_policy
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__res_company__sale_default_invoice_policy__order
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__sale_order__invoice_policy__order
msgid "Ordered quantities"
msgstr "Cantidades pedidas"

#. module: sale_invoice_policy
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__res_company__sale_default_invoice_policy__product
#: model:ir.model.fields.selection,name:sale_invoice_policy.selection__sale_order__invoice_policy__product
msgid "Products Invoice Policy"
msgstr ""

#. module: sale_invoice_policy
#: model:ir.model.fields,field_description:sale_invoice_policy.field_res_company__sale_default_invoice_policy
#: model:ir.model.fields,field_description:sale_invoice_policy.field_res_config_settings__sale_default_invoice_policy
msgid "Sale Default Invoice Policy"
msgstr ""

#. module: sale_invoice_policy
#: model_terms:ir.ui.view,arch_db:sale_invoice_policy.view_sales_config
msgid "Sale Invoice Policy"
msgstr "Política de facturación para ventas"

#. module: sale_invoice_policy
#: model:ir.model.fields,field_description:sale_invoice_policy.field_res_config_settings__sale_invoice_policy_required
msgid "Sale Invoice Policy Required"
msgstr "Política de facturación requerida para ventas"

#. module: sale_invoice_policy
#: model:ir.model,name:sale_invoice_policy.model_sale_order
msgid "Sales Order"
Expand All @@ -86,33 +78,9 @@ msgid "Sales Order Line"
msgstr "Línea de pedido de venta"

#. module: sale_invoice_policy
#: model:ir.model.fields,help:sale_invoice_policy.field_res_company__sale_default_invoice_policy
#: model:ir.model.fields,help:sale_invoice_policy.field_res_config_settings__sale_default_invoice_policy
msgid "This will be the default invoice policy for sale orders."
msgstr ""

#~ msgid "Invoice Policy Required"
#~ msgstr "Política de facturación requerida"

#~ msgid "Invoice Policy required in Sale Orders"
#~ msgstr "Política de facturación requerida en pedidos de venta"

#~ msgid ""
#~ "Ordered Quantity: Invoice based on the quantity the customer ordered.\n"
#~ "Delivered Quantity: Invoiced based on the quantity the vendor delivered "
#~ "(time or deliveries)."
#~ msgstr ""
#~ "Cantidad pedida: facturada en función de la cantidad pedida por el "
#~ "cliente.\n"
#~ "Cantidad entregada: facturada en función de la cantidad entregada por el "
#~ "proveedor (tiempo o entregas)."

#~ msgid "Sale Invoice Policy Required"
#~ msgstr "Política de facturación requerida para ventas"

#~ msgid "This makes Invoice Policy required on Sale Orders"
#~ msgstr ""
#~ "Hace que la política de facturación sea requerida en pedidos de venta"
#: model:ir.model.fields,help:sale_invoice_policy.field_res_config_settings__sale_invoice_policy_required
msgid "This makes Invoice Policy required on Sale Orders"
msgstr "Hace que la política de facturación sea requerida en pedidos de venta"

#~ msgid "Default Invoicing Policy"
#~ msgstr "Política de facturación por defecto"
Expand Down
Loading
Loading