Skip to content

Commit

Permalink
Merge pull request #1692 from OCA/18.0
Browse files Browse the repository at this point in the history
Syncing from upstream OCA/purchase-workflow (18.0)
  • Loading branch information
bt-admin authored Mar 1, 2025
2 parents 5c674b7 + 81e184a commit dd14698
Show file tree
Hide file tree
Showing 26 changed files with 1,141 additions and 1 deletion.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ addon | version | maintainers | summary
[purchase_delivery_split_date](purchase_delivery_split_date/) | 18.0.1.0.0 | | Allows Purchase Order you confirm to generate one Incoming Shipment for each expected date indicated in the Purchase Order Lines
[purchase_deposit](purchase_deposit/) | 18.0.1.0.0 | | Option to create deposit from purchase order
[purchase_exception](purchase_exception/) | 18.0.1.0.0 | | Custom exceptions on purchase order
[purchase_force_invoiced](purchase_force_invoiced/) | 18.0.1.0.0 | | Allows to force the billing status of the purchase order to "Invoiced"
[purchase_invoice_plan](purchase_invoice_plan/) | 18.0.1.0.0 | [![kittiu](https://github.com/kittiu.png?size=30px)](https://github.com/kittiu) | Add to purchases order, ability to manage future invoice plan
[purchase_last_price_info](purchase_last_price_info/) | 18.0.1.0.0 | [![LoisRForgeFlow](https://github.com/LoisRForgeFlow.png?size=30px)](https://github.com/LoisRForgeFlow) | Purchase Product Last Price Info
[purchase_open_qty](purchase_open_qty/) | 18.0.1.0.0 | | Allows to identify the purchase orders that have quantities pending to invoice or to receive.
Expand Down
104 changes: 104 additions & 0 deletions purchase_force_invoiced/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
=======================
Purchase Force Invoiced
=======================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:8d62d9827f93c1b10829091c7759a63508381485645cdfeb2d052cf7bf8fa2e7
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |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/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%2Fpurchase--workflow-lightgray.png?logo=github
:target: https://github.com/OCA/purchase-workflow/tree/18.0/purchase_force_invoiced
:alt: OCA/purchase-workflow
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/purchase-workflow-18-0/purchase-workflow-18-0-purchase_force_invoiced
: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/purchase-workflow&target_branch=18.0
:alt: Try me on Runboat

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

This module adds the possibility for users to force the invoice status
of the purchase orders to 'Fully Billed', even when not all the
quantities, ordered or delivered, have been invoiced.

This feature is useful in the following scenario:

- The supplier disputes the quantities to be billed for, after the
products have been delivered to her/him, and you agree to reduce the
quantity to invoice (without expecting a refund).
- When migrating from a previous Odoo version, in some cases there is
less quantity billed to what was delivered, and you don't want these
old purchase orders to appear in your 'Waiting Bills' list.

**Table of contents**

.. contents::
:local:

Usage
=====

1. Create a purchase order and confirm it.
2. Receive the products/services.
3. Create a vendor bill and reduce the invoiced quantity. The purchase
order invoicing status is 'Waiting Bills'.
4. Lock the Purchase Order and change its status to 'Done'.
5. Check the field 'Force Invoiced'.

The field is only visible for users that have the technical setting 'Set
purchase orders to Force Invoiced'. By default, all purchase managers
have this setting.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/purchase-workflow/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/purchase-workflow/issues/new?body=module:%20purchase_force_invoiced%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
-------

* Forgeflow

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

- Jordi Ballester <[email protected]>
- Rattapong Chokmasermkul <[email protected]>
- Bert Van Groenendael <[email protected]>
- Stefan Rijnhart <[email protected]>

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.

This module is part of the `OCA/purchase-workflow <https://github.com/OCA/purchase-workflow/tree/18.0/purchase_force_invoiced>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
4 changes: 4 additions & 0 deletions purchase_force_invoiced/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)

from . import model
from . import reports
20 changes: 20 additions & 0 deletions purchase_force_invoiced/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Copyright 2019 ForgeFlow S.L.
# Copyright 2019 Aleph Objects, Inc.
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)

{
"name": "Purchase Force Invoiced",
"summary": "Allows to force the billing status of the purchase order to "
'"Invoiced"',
"version": "18.0.1.0.0",
"author": "Forgeflow, Odoo Community Association (OCA)",
"category": "Purchase Management",
"license": "AGPL-3",
"website": "https://github.com/OCA/purchase-workflow",
"depends": ["purchase"],
"data": [
"security/res_groups_data.xml",
"view/purchase_order.xml",
],
"installable": True,
}
53 changes: 53 additions & 0 deletions purchase_force_invoiced/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * purchase_force_invoiced
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2023-04-17 17:34+0000\n"
"Last-Translator: gelo joga Rodríguez <[email protected]>\n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.14.1\n"

#. module: purchase_force_invoiced
#: model:ir.model.fields,field_description:purchase_force_invoiced.field_purchase_order__force_invoiced
msgid "Force Invoiced"
msgstr "Forzar estado a Facturado"

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_order
msgid "Purchase Order"
msgstr "Pedido de Compra"

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_report
msgid "Purchase Report"
msgstr "Informe de compras"

#. module: purchase_force_invoiced
#: model:res.groups,name:purchase_force_invoiced.group_force_invoiced
msgid "Set purchase orders to 'Force Invoiced'"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model.fields,help:purchase_force_invoiced.field_purchase_order__force_invoiced
msgid ""
"When you set this field, the purchase order will be considered as fully "
"billed, even when there may be ordered or delivered quantities pending to "
"bill. To use this field, the order must be in 'Locked' state"
msgstr ""
"Cuando se marca este campo, el pedido de compra se considera como totalmente "
"facturado, aunque haya cantidades pedidas o entregadas pendientes de "
"facturar. Para usar este campo, el pedido debe estar en estado \"Bloqueado\""
54 changes: 54 additions & 0 deletions purchase_force_invoiced/i18n/fr.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * purchase_force_invoiced
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2023-11-02 12:36+0000\n"
"Last-Translator: Alexis de Lattre <[email protected]>\n"
"Language-Team: none\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.17\n"

#. module: purchase_force_invoiced
#: model:ir.model.fields,field_description:purchase_force_invoiced.field_purchase_order__force_invoiced
msgid "Force Invoiced"
msgstr "Forcer le statut à 'Entièrement facturé'"

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_order
msgid "Purchase Order"
msgstr "Commande fournisseur"

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_report
msgid "Purchase Report"
msgstr "Rapport d'achat"

#. module: purchase_force_invoiced
#: model:res.groups,name:purchase_force_invoiced.group_force_invoiced
msgid "Set purchase orders to 'Force Invoiced'"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model.fields,help:purchase_force_invoiced.field_purchase_order__force_invoiced
msgid ""
"When you set this field, the purchase order will be considered as fully "
"billed, even when there may be ordered or delivered quantities pending to "
"bill. To use this field, the order must be in 'Locked' state"
msgstr ""
"Lorsque cette option est activée, le statut de la commande fournisseur "
"basculera à 'Entièrement facturé' même s'il reste des quantités commandées "
"ou livrées à facturer. Pour utiliser cette option, la commande doit être à "
"l'état \"Verrouillé\"."
54 changes: 54 additions & 0 deletions purchase_force_invoiced/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * purchase_force_invoiced
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 17.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-04 23:46+0000\n"
"Last-Translator: mymage <[email protected]>\n"
"Language-Team: none\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"

#. module: purchase_force_invoiced
#: model:ir.model.fields,field_description:purchase_force_invoiced.field_purchase_order__force_invoiced
msgid "Force Invoiced"
msgstr "Forza a fatturato"

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_order
msgid "Purchase Order"
msgstr "Ordine di acquisto"

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_report
msgid "Purchase Report"
msgstr "Resoconto di acquisto"

#. module: purchase_force_invoiced
#: model:res.groups,name:purchase_force_invoiced.group_force_invoiced
msgid "Set purchase orders to 'Force Invoiced'"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model.fields,help:purchase_force_invoiced.field_purchase_order__force_invoiced
msgid ""
"When you set this field, the purchase order will be considered as fully "
"billed, even when there may be ordered or delivered quantities pending to "
"bill. To use this field, the order must be in 'Locked' state"
msgstr ""
"Quando si imposta questo campo, l'ordine di acquisto verrà considerato come "
"completamente pagato, anche se ci sono quantità ordinate o consegnate in "
"attesa di pagamento. Per usare questo campo, l'ordine deve essere in stato "
"'Bloccato'"
47 changes: 47 additions & 0 deletions purchase_force_invoiced/i18n/purchase_force_invoiced.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * purchase_force_invoiced
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 18.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: purchase_force_invoiced
#: model:ir.model.fields,field_description:purchase_force_invoiced.field_purchase_order__force_invoiced
msgid "Force Invoiced"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_order
msgid "Purchase Order"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model,name:purchase_force_invoiced.model_purchase_report
msgid "Purchase Report"
msgstr ""

#. module: purchase_force_invoiced
#: model:res.groups,name:purchase_force_invoiced.group_force_invoiced
msgid "Set purchase orders to 'Force Invoiced'"
msgstr ""

#. module: purchase_force_invoiced
#: model:ir.model.fields,help:purchase_force_invoiced.field_purchase_order__force_invoiced
msgid ""
"When you set this field, the purchase order will be considered as fully "
"billed, even when there may be ordered or delivered quantities pending to "
"bill. To use this field, the order must be in 'Locked' state"
msgstr ""
Loading

0 comments on commit dd14698

Please sign in to comment.