Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[18.0][MIG] sale_order_invoicing_grouping_criteria migration to 18.0 #1815

Open
wants to merge 35 commits into
base: 18.0
Choose a base branch
from

Conversation

BertVGroenendael
Copy link

No description provided.

pedrobaeza and others added 30 commits October 17, 2024 12:03
…rouping criteria

This module allows to use custom criteria for grouping sales orders to be
invoiced.

Default criteria for grouping (invoicing partner and currency used) will be
always applied, as if not respected, there will be business inconsistencies,
but you can add more fields to split the invoicing according them.

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

For creating new grouping criteria:

1. Go to *Invoicing > Configuration > Management > Invoicing Grouping Criteria*.
2. Create or modify existing criteria, selecting fields belonging to "Sales
   Order" header model for grouping according them.
3. Invoicing address and currency will always be applied with the selected
   ones.

For setting a different grouping criteria for a specific customer:

1. Go to *Invoicing > Sales > Master Data > Customers*.
2. Open the desired customer.
3. Go to *Invoicing* page.
4. Set on "Sales Invoicing Grouping Criteria" the desired grouping
   criteria.

For setting a different default grouping criteria than the standard for the
whole company:

1. Go to *Invoicing > Configuration> Settings*.
2. Locate inside "Sales Order Invoicing" section, the field "Default
   Grouping Criteria".
3. Introduce there the grouping criteria to be applied by default. If empty,
   the general default of invoicing address + currency will be applied.

Usage
=====

1. Go to *Sales > Invoicing > Orders to Invoice*.
2. Select sales orders whose invoicing you want to do.
3. Click on *Action > Invoice Order*.
4. Click on "Create and View Invoices" button.
5. On that moment, the grouping criteria will be applied, and you will see
   different invoices if the criteria doesn't match for them.
Odoo now includes a hook for obtaining the grouping criteria, so we are making use
of it for cleaning some code and being compatible with other developments.

We also clarifies in documentation the new company grouping criteria also introduced
by Odoo, as v13 allows to see several companies at the same time.
…riteria, but slice super calls

It turns out that the grouping criteria is applied over the invoice vals dictionary
list instead on sales order so you can't group by any field in sales order,
including the trick of slicing by ID for not grouping at all.

We then restore and adapt the v12 code, that slices the recordset in pieces
according the grouping criteria with fields obtained in the sales orders.
- The partner to get the grouping criteria should be the invoice address (if set) as this one will be used to create the invoice;
- Extract this part into a function to have a overwritable point;
- Little improvement into unit test: disable tracking.
The function signature has changed in 14.0
Currently translated at 100.0% (21 of 21 strings)

Translation: account-invoicing-15.0/account-invoicing-15.0-sale_order_invoicing_grouping_criteria
Translate-URL: https://translation.odoo-community.org/projects/account-invoicing-15-0/account-invoicing-15-0-sale_order_invoicing_grouping_criteria/fr/
Currently translated at 100.0% (21 of 21 strings)

Translation: account-invoicing-15.0/account-invoicing-15.0-sale_order_invoicing_grouping_criteria
Translate-URL: https://translation.odoo-community.org/projects/account-invoicing-15-0/account-invoicing-15-0-sale_order_invoicing_grouping_criteria/ca/
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: account-invoicing-16.0/account-invoicing-16.0-sale_order_invoicing_grouping_criteria
Translate-URL: https://translation.odoo-community.org/projects/account-invoicing-16-0/account-invoicing-16-0-sale_order_invoicing_grouping_criteria/
Currently translated at 100.0% (21 of 21 strings)

Translation: account-invoicing-16.0/account-invoicing-16.0-sale_order_invoicing_grouping_criteria
Translate-URL: https://translation.odoo-community.org/projects/account-invoicing-16-0/account-invoicing-16-0-sale_order_invoicing_grouping_criteria/ca/
Currently translated at 100.0% (21 of 21 strings)

Translation: account-invoicing-16.0/account-invoicing-16.0-sale_order_invoicing_grouping_criteria
Translate-URL: https://translation.odoo-community.org/projects/account-invoicing-16-0/account-invoicing-16-0-sale_order_invoicing_grouping_criteria/de/
Currently translated at 66.6% (14 of 21 strings)

Translation: account-invoicing-16.0/account-invoicing-16.0-sale_order_invoicing_grouping_criteria
Translate-URL: https://translation.odoo-community.org/projects/account-invoicing-16-0/account-invoicing-16-0-sale_order_invoicing_grouping_criteria/it/
Currently translated at 100.0% (21 of 21 strings)

Translation: account-invoicing-16.0/account-invoicing-16.0-sale_order_invoicing_grouping_criteria
Translate-URL: https://translation.odoo-community.org/projects/account-invoicing-16-0/account-invoicing-16-0-sale_order_invoicing_grouping_criteria/it/
@BertVGroenendael BertVGroenendael mentioned this pull request Oct 17, 2024
13 tasks
@pedrobaeza
Copy link
Member

/ocabot migration sale_order_invoicing_grouping_criteria

@OCA-git-bot OCA-git-bot added this to the 18.0 milestone Oct 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.