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

[REF] split _get_last_sequence_domain in account_move #100

Draft
wants to merge 181 commits into
base: 16.0
Choose a base branch
from

Conversation

glitchov
Copy link

Description of the issue/feature this PR addresses:
Account-models-account_move: split _get_last_sequence_domain to offer an override capability to where_clause and domain through a new method: _prepare_get_last_sequence_domain

Current behavior before PR:

Desired behavior after PR is merged:
No change


I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr

mwath and others added 30 commits June 4, 2024 13:34
Prevent developers to use these attributes on the registry
instances, as they are supposed to be called from the class itself
only

closes odoo#82718

Signed-off-by: Raphael Collet <[email protected]>
The dateutil API, available attributes, depends from one version to
another.

Restrict the attributes developers/customers can use in their server
actions to prevent compatibility issues according to different
Linux distribution or PIP installations.

The list is built following what customers actually use
in their server actions, and what we consider useful to
be used in server actions.

closes odoo#93314

Signed-off-by: Xavier Morel (xmo) <[email protected]>
Prevent keys from several business flows from being misused or detected,
leading to unexpected behaviour.

task-3817669
When printing the gift card report the text saying "Card expires" would
show despite there being no expiration date.

Added a t-if to check if the field is populated before displaying that
text.

Backport of odoo@ec4d3f0

opw-4016994

closes odoo#171447

Signed-off-by: Morgane Demesmaeker <[email protected]>
Before this commit:
-Resized column widths were lost when moving the top row down or the second
 row up.
-This happened because the new widths after resizing were only applied to the
 <td> elements of the first <tr>.

After this commit:
-When moving the top row down or second row up, column widths are copied from
 the first row to the second row.
-Tables don't lose resizing after moving the first row up or down.

task-4019025

closes odoo#171695

Signed-off-by: David Monjoie (dmo) <[email protected]>
…voices

Steps to reproduce:
- Install the 'l10n_sa' module and switch to a saudi company
- In the Settings of Accounting, tick the option "Default Terms & Conditions" and select "Add a Note"
- Write something in for the Terms & Conditions
- In the Accounting app create a new invoice, confirm and preview
- At the bottom of the preview, the Terms & Conditions are duplicated

Cause:
The report is trying to print the Arabic and English translation of the Term & Conditions, but only one of the two exists so they appear duplicated.

Solution:
There is already a way to translate manually the Terms & Conditions (Have the 2 languages installed and a button appear near the text). So the fix is simply to display only the Arabic language when there are no translations.

opw-4043175

closes odoo#172781

Signed-off-by: William André (wan) <[email protected]>
Issue:
======
Image changes aren't auto saved.

Steps to reproduce the issue:
=============================
- Add cover snippet and text-image snipets
- Change cover image or the image in the text-image snippet
- Don't click anywhere after that
- Switch tab to A/B testing for example
- Go back to mail body
- The image changes aren't saved

Origin of the issue and solution:
=================================

When we choose an image from the media dialog, we loose the focus from
the editable which means `onWysiwygBlur` is not called and as
consequence `commitChanges` isn't called too.

Since the flow of the destroy and the `commitChanges` in `onWysiwygBlur`
are in parallel, the following happens:
- We don't update the value in the blur flow because we will wait for
  some promises which may take some time and the component gets
  destroyed and we never call the `updateValue` at the end of the
  function.
- Now in the `commitChanges` coming from `onWillUnmount` we need to pass
  the `urgent` flag in mass_mailing too.

opw-3947516

closes odoo#172312

Signed-off-by: David Monjoie (dmo) <[email protected]>
Check if the user selected the carrier for storable/consumable products
before proceeding to payment.

Backport of [35ea9bf](odoo@35ea9bfb)

opw-3861697

closes odoo#174248

X-original-commit: 188f019
Signed-off-by: Julien Launois (jula) <[email protected]>
Backport of commit 2b27e1b

closes odoo#174367

Signed-off-by: Florian Vranckx (flvr) <[email protected]>
In no-demo tests, there is no link tracker, so
the expected length is not max+1 but 3.

Follow up of e5b88d3

Task-3502174

closes odoo#174371

X-original-commit: 074ea09
Signed-off-by: Thibault Delavallee (tde) <[email protected]>
When you click on the Time-off smart-button on an employee's tab, you define a context that must be maintained

Similar to 15.0: https://github.com/odoo/odoo/blob/15.0/addons/web/static/src/legacy/js/views/calendar/calendar_controller.js#L160

TT49839

[IMP] hr_holidays: Use the context employee or the user's employee

TT50253

closes odoo#172380

Signed-off-by: Sofie Gvaladze (sgv) <[email protected]>
Steps to reproduce:
	- Install eCommerce and Loyalty module
	- Create a Discount that is applied using code
	- Generate coupon codes
	- Modify the balance of the codes to be more than 1
	- Go to website and create an order
	- Proceed to checkout and apply one of the codes

Current behavior before PR:
The reward will be shown as claimable even after we already applied
its code. This will lead that the user can be able to claim it more
than once in the same order. This is happening becuase when getting
the claimable rewards we are fetching the rewards that already got applied.
https://github.com/odoo/odoo/blob/16.0/addons/sale_loyalty/models/sale_order.py#L655

Desired behavior after PR is merged:
We are excluding the already-applied discounts on the order to avoid
using them more than once in the same order.

opw-4018909

closes odoo#173555

Signed-off-by: Morgane Demesmaeker <[email protected]>
ammending 50c9c3d
to take into account env.company instead of companies

closes odoo#174329

Signed-off-by: Adrien Widart (awt) <[email protected]>
Currently when importing an order from sale to pos, if the price was set
manually, changing the partner associated with the order will set back the
price to the original product sale price.

Steps to reproduce:
-------------------
* Make a new quotation in **sales**
* Change the unit price of a product
* Confirm quotation
* Open the pos shop session
* Import the newly created quotation to be settled
* Change the partner
> Observation: The price set manually changes to the product sale price

Why the fix:
------------
When changing the partner of a sale order we compute all the line that have
to recompute their prices:
https://github.com/odoo/odoo/blob/57f1b0bd502938a6d50244896e71df73705584b5/addons/point_of_sale/static/src/js/models.js#L2918-L2920

We see that when we settle an order, `price_manually_set` is set to false.
In this example, if we set it to true it would solve the issue but we cannot use it,
see with odoo@70668ee .

Instead what we can do is to use `price_automatically_set` and set it to true.
This does not undo the previously mentionned commit and fixes this current issue.
This variable was created in odoo@0672995

opw-4001497

closes odoo#172205

Signed-off-by: Adrien Guilliams (adgu) <[email protected]>
Prior to this commit, enabling limited product loading could result in
the discount product not being loaded.

opw-4057657

closes odoo#173600

Signed-off-by: Adrien Guilliams (adgu) <[email protected]>
Problem
---
The `sequence` field of product attributes has no default,
This causes ordering bugs in the frontend when using handles.

Steps
---
* go to product attributes list view
* move the last element to the top (to ensure a full reordering)
* create a new product attribute *PA* > go back to the list view
        * it appears at the bottom of the list
        * its sequence appears to be 0 to the frontend but is actually
          NULL
* move it one place up
        * *PA* and the item after it now have the sequence numbers 0, 1
* refresh
        * the two last items move to the top, crisscrossing with the
          previous 2 first items which also have sequence 0, 1

Cause
---
The frontend always assume click-and-drag sortable lists are already
sorted, but this assumption is wrong when we have a record with a NULL
`sequence`, because it will appears at the end of the ORDERBY SQL query
but be converted to 0 frontend-side.

opw-3937263

closes odoo#174397

Signed-off-by: Nathaniel Jacques (naja) <[email protected]>
Steps to reproduce:
- Edit any product's 'Description for delivery orders' (inventory tab)
- Create a delivery for this product (or confirm sale order to create one automatically)
- Print delivery slip (Correct formatting)
- Validate delivery
- Print delivery slip once more (Description loses linebreaks)

This is only for looks, but it's a document the end user will see so there are concerns about it looking unprofessional.

This formatting error is due to us not being able to use a field element after remaking the order lines to group related products in python.

opw-4040127

closes odoo#174531

X-original-commit: a5e9820
Signed-off-by: Adrien Widart (awt) <[email protected]>
Signed-off-by: Yoann Baron (bary) <[email protected]>
This is a complement to previous fix:
odoo@649a7f1
in which the use case where both companies have "Round Globally" set as
"Rounding Method" was not handled.

Steps to reproduce:
- Install Sales & Accounting
- Create a second company with a different currency (e.g. AED) than the first one (e.g. USD)
- Configure the rounding factor of the currency of the second company to 1.000000
- Configure the default company of the current user to the second company
- Switch to the second company
- In Accounting settings, set "Rounding Method" to "Round Globally"
- Switch to the first company
- In Accounting settings, set "Rounding Method" to "Round Globally"
- Create a SO:
  * Customer: [any]
  * Order Lines: [any line with a tax]
- Save the SO
- Edit the SO by changing the price unit of the product
  !!! Make sure that the tax amount has a decimal part
- Save the SO

Issue:
In the chatter, the note about the new value of the tracked field Total
is different from the Total value shown in the SO.
Also, in Customer Preview, the total to pay shown on the upper-left of
the page is different than the total shown in the SO details.

opw-3814058

closes odoo#174560

Signed-off-by: Anh Thao Pham (pta) <[email protected]>
version - 16.0

Steps:
-Install rental app.
-Activate the date picker from the web-editor.
-Add the start date and end date from that.
-Select some attribute of the product.

Issue:
-When any user adds the start date and end date from the date picker and
after that, the user adds the other attribute(filter) of the product, that s>

Cause:
-The selected rental period (start and end dates) is not persisted when the
 page refreshes or updates due to attribute selection.

Fix:
Get the value of 'start_date' and 'end_date'.
Update the hidden input fields for 'start_date' and 'end_date' with the
values before applying the attribute changes.

opw-3774060

closes odoo#165068

Related: odoo/enterprise#64962
Signed-off-by: Valentin Chevalier <[email protected]>
Was always failing because of an invalid signature

closes odoo#174555

X-original-commit: 17c2bcf
Signed-off-by: Thibault Delavallee (tde) <[email protected]>
Before this commit, when performing the Google Calendar account reset
in Odoo, some events and recurrences were disappearing from Odoo when
they shouldn't. This was happening because we were not removing the
'google_id' information of deleted recurrences or even unlinking
events incorrectly in Odoo side. Additionally, the synchronization of
only 'new' or 'all existing' events were not correctly being handled
because the 'need_sync' write should change according with the selected
'sync_policy'.

After this commit, we correctly remove the 'google_id' of recurrences
when the deleting them and we now consider correctly the 'sync_policy'
of synchronizing only 'new' or 'all existing' events by updating the
'need_sync' status of all existing synchronized events.

task-3731683

closes odoo#167299

Signed-off-by: Arnaud Joset (arj) <[email protected]>
Issue:
The `_get_weight` method is called for each location
to compute the weight and it sums up all the incoming
and outgoing lines for forecasted weight. Using filtered
for each record is compute intensive and gets slower overtime.

While returning a delivery with 30 stock moves the
_create_return took 7:41 minutes most of which were
on `_get_weight`.

Solution:
Optimized the `_get_weight` method to use `read_group`
to get the sum of incoming and outgoing lines.

closes odoo#170675

Signed-off-by: Quentin Wolfs (quwo) <[email protected]>
Update the OWL lib.

Release notes:
https://github.com/odoo/owl/releases/tag/v2.3.0

These releases contain small improvements

* v2.3.0
[IMP] compiler: add support for the .translate suffix

closes odoo#174621

Signed-off-by: Géry Debongnie <[email protected]>
Current behaviour:
When sending an email through Email Marketing,
the icon is right in the preview, but wrong in
the received email.

Steps to reproduce:
1. Install mass_mailing
2. Create a new mailing
3. Select a template with a twitter icon
4. The icon is the new one
5. Click on Test
6. Open the email
7. Wrong icon

Cause of the issue:
Twitter icons have been overriden in fontawesome_overridden.scss
However this css is not loaded when writing the src
in fontToImg in convert_inline.js

Fix:
Same fix as for tiktok, forcing a custom font
and changing the icon code to match the font
(ie: one icon is F099 in FA but E800 in the custom font)

opw-3963437

closes odoo#173874

X-original-commit: 5b463f7
Signed-off-by: Antoine Demany (ande) <[email protected]>
Current behavior:
Israeli mobile phone numbers are composed as such:
+972 55-295-1235
+972 country code, 5X mobile number indicator,
X5-29 phone operator
Only operators up to 5-28 were supported, recent
library changes now support up to 5-29
(the next operator being 5-32)

Steps to reproduce:
parsed = phonenumbers.parse('055 294 1234', 'IL')
is_valid = phonenumbers.is_valid_number(parsed)
is_valid == False

Cause of the issue:
Old versions of phonenumbers (external library) are not
up to date with the latest israeli phone system changes

Fix:
Monkey patched the library
Similar as: odoo@b787803

opw-3942014

closes odoo#174570

X-original-commit: 5fe431a
Signed-off-by: Thibault Delavallee (tde) <[email protected]>
Signed-off-by: Antoine Demany (ande) <[email protected]>
When the user adds a Kenyan phone number, it is not correctly parsed by
the phonenumbers library, resulting in a user error while sending a WhatsApp
message to that number.

Steps to produce:
- Add a Kenyan phone number (e.g., '+254114627044').
- Try to send WhatsApp messages using this phone number.
- This will throw an Invalid number error.

Problem:
when `phonenumbers` python library is used in odoo for parsing phone numbers,
versions below `8.13.31` have problem with parsing some Kenyian numbers because
they aren't updated, therefore they can't identify prefix and throw an error.

task-3994165

closes odoo#174636

X-original-commit: 39e16a5
Signed-off-by: Thibault Delavallee (tde) <[email protected]>
Signed-off-by: Dato Nefaridze (dane) <[email protected]>
Some valid URLs were not working before because since [1], we were only
supporting 15-16 digits facebook page ID, but some have less numbers. We
now check IDs between 12 and 16 numbers.

We also add a feedback notification for users if their link did not work
for some reason.

[1]: odoo@82c4393

task-3995431

closes odoo#174596

X-original-commit: e4e9a14
Signed-off-by: Robin Lejeune (role) <[email protected]>
The signature of `_get_additional_shop_values` was wrongly changed in
6957035.

closes odoo#174680

Related: odoo/enterprise#67452
Signed-off-by: Valentin Chevalier <[email protected]>
Updates the partner demo data for the chilean localization. One of the demo companies had real information which was dangerous to have in databases.

[FIX] l10n_cl: Eliminate partner demo logo

Eliminates a partner demo data logo since it was the official logo of the company, and we received complaints from the company.

closes odoo#174589

X-original-commit: 88160a7
Signed-off-by: Laurent Smet (las) <[email protected]>
AlienAtSystem and others added 29 commits August 21, 2024 09:17
A Factur-X XML generated in Germany should not falsely claim to be
compliant to the KoSIT XRechnung.

closes odoo#177330

Signed-off-by: Ricardo Gomes Rodrigues (rigr) <[email protected]>
- Intall website_sale_product_configurator
- Create a product A with price 3 999.00 €
- Add an optional product on product A
- Go to shop page
- Go to product A
- Add to cart
- A modal popup appear
- Finelize cart
--> Issue the price send to datalayer is 3.
Because "3 999,00" is send in the json, endead 3999.00.

closes odoo#177211

X-original-commit: ac3ec19
Signed-off-by: Louis Tinel (loti) <[email protected]>
Co-authored-by: ltinel <[email protected]>
When using a non parsable ODOO_MAX_HTTP_THREADS value, take into account
max_cron_threads.
When a lot of xmlrpc or jsonrpc calls are made, 2 cursor are used per
call due to the authentification so it maxes out and the pool limit.
If the cron_thread are using a cursor we end up with a "Pool Is Full"
error.

closes odoo#177237

X-original-commit: 24f67bf
Signed-off-by: Rémy Voet (ryv) <[email protected]>
in simple notification handler

This PR allows users to send simple notifications with 'success',
'info', 'warning', and 'danger' border color schemes. If the warning or type
parameter is not provided, it will default to the 'danger' type, as it
did before this PR, so it will not affect any previously written bus
notification call.

closes odoo#177323

Signed-off-by: Sébastien Theys (seb) <[email protected]>
When having a lot of forum posts, the pager can display up to 10 pages,
because the specified scope is the set to the same value as the number
of posts per page, which is 10. This causes layout issues in mobile view
in that case, because the pager overflows from the page.

This commit fixes that by setting the scope to 5 instead (like the Event
pager).

opw-4050389

closes odoo#177275

X-original-commit: cf8b094
Signed-off-by: Benoit Socias (bso) <[email protected]>
Signed-off-by: Soukéina Bojabza (sobo) <[email protected]>
Steps to reproduce:
- Install module 'France - Adding Mandatory Invoice Mentions'
- Switch to FR company
- Contacts > Create french company
- Sales & Purchase tab > set SIRET value
- Create an invoice for this company > Print it

The SIRET number does not show up anywhere on the invoice, despite the conditions being met.
The SIRET number has been mandatory since July 1st 2024 in France

This sometimes happens because the xpath only edits one of the 3
possible address tags added in 16.0. There is no need to edit the margin
because the address already has mb-0 in its classes.

opw-3865644

closes odoo#177060

Signed-off-by: Antoine Dupuis (andu) <[email protected]>
Simple patch that prevent the prefetch of the oauth token

closes odoo#177357

X-original-commit: 3be513d
Signed-off-by: Rémy Voet (ryv) <[email protected]>
Signed-off-by: Florian Vranckx (flvr) <[email protected]>
…Update.

* PROPBLEM: The error is raised when user has access to Project Update, but not to Journal Item.
* SOLUTION: Add `sudo` when searching `account.move.line` in the method `_get_already_included_profitability_invoice_line_ids`.

closes odoo#177150

Signed-off-by: Xavier Bol (xbo) <[email protected]>
The "Images Subtitles" and the "Thumbnails" mega menu templates do not
look good in mobile view, depending on the size of the text written in
them. Indeed, under some breakpoints, the classes force the elements to
be next to each to other, to have two elements by line. So if a big word
is contained in the left one, which is not rare in the German language
for example, the text may overflow to the right one and overlap with it.

This commit fixes this issue by adding more freedom to these mega menu
templates at the problematic breakpoints, so they can be more responsive
with their content, while still looking good.

Step to reproduce:
- In the menu editor, add a mega menu.
- In edit mode, click on the mega menu.
- Select the "Images Subtitles" or the "Thumbnails" template.
- As a first element, write the following title: "Foto- und Fine Art
  Großformatdrucker".
- Save and resize down the screen until it toggles the mobile view.
- Open the mega menu and continue to resize down.
=> At some point, near the "SM" breakpoint, you will notice that the
text becomes too big and overlaps the right element.

opw-4096112

closes odoo#177274

X-original-commit: 7565c35
Signed-off-by: Benoit Socias (bso) <[email protected]>
Signed-off-by: Soukéina Bojabza (sobo) <[email protected]>
When using a fiscal position that map account. If you use automatic
stock valuation and make an order in the PoS, the account used where not
mapped correctly for all the account move lines.

Steps to reproduce:
-------------------
* Turn on automatic stock valuation for the category `All`
* The category use account A and account B for expense and income
* Create a fiscal position that matches account A and B to any other
  account
* Open PoS and make an order
> Observation: Go back to the order and look at the move lines linked to
  the order. One of the lines still use an account that hasn't been
  mapped

Why the fix:
------------
We make sure that when creating the stock valuation lines the account
are correctly mapped using `order_id.fiscal_position_id.map_account`

opw-4086609

closes odoo#177369

Signed-off-by: Vlad Stroia (vlst) <[email protected]>
…number

Steps to reproduce:
[l10n_ec]
- Create a credit note from the Bill journal
- Set a foreign customer
- Set a customized document number

Issue:
An error will be raised saying that the format is not correct

But, as defined by VBE, "If a Credit Note is created from a Vendor Bill and the partner_id != "EC", [we should] allow the user to allocate any number without following the EC format."

Solution:
When we call `_format_document_number` we don't have any information about the initial move. Instead of using a context or adding new fields, we add a hook in which we can specify
certain conditions to bypass the document check/formatting for localisations.

opw-3993305

closes odoo#174950

Related: odoo/enterprise#67589
Signed-off-by: Antoine Dupuis (andu) <[email protected]>
The Issue:
Before this commit, assigning a URL to the page triggered the write function.
Within this function, the get_current_website function returned a different
website than the one in the test. As a result, the rest of the code
applied to this incorrect website instead of the appropriate one.

The Fix:
Pass the correct website within the context

runbot-54617

closes odoo#176032

Signed-off-by: Benoit Socias (bso) <[email protected]>
Problem
---------
With commit c1ea29e, we fixed the
following problem:

when reversing an invoice, the current company is used as
recipient bank and not the customer's one.

However, that fix did only took into concideration reversing invoices
and not bills. This commit is here to fix that.

When reversing a BILL (in_invoice), we use the company's bank.
When reversing an INVOICE (out_invoice), we use the commercial partner's
bank.

opw-4035448

closes odoo#177645

X-original-commit: 19dc74e
Signed-off-by: Wala Gauthier (gawa) <[email protected]>
Signed-off-by: Antoine Boonen (aboo) <[email protected]>
Create a new payslip
Select Employee and contract
Compute Sheet
Create Draft Entry > Post Draft Entry
Cancel payslip

Issue: The system will attempt to reset to draft and unlink the
associated invoice
In some cases this is not ideal: In Indian government for example, requires
audit trail report for private limited companies, so user can't delete journal
entries after posting once.

Backporting method `_unlink_or_reverse` from 17.0 [1] to be used in the
related PR odoo/enterprise#68044

[1] https://github.com/odoo/odoo/blob/66bfab54748a56072ed9ff144f4a39366b606a06/addons/account/models/account_move.py#L3772-L3785

opw-4075244

closes odoo#176792

Related: odoo/enterprise#68044
Signed-off-by: Ricardo Gomes Rodrigues (rigr) <[email protected]>
From most openpyxl resources it is generally recommended to
instantiate it as `read_only=True` or `write_only=True` in order to
leverage lazy modes which do not need to eagerly load the entire file
in memory.

However this causes memory exhaustion issues in Odoo workers, with
file preview / imports failing: apparently we have managed to generate
the `res_partner.xlsx` sample file in such a way that
`load_workbook(read_only=True)` is incapable of finding the end of the
file, so it thinks the file goes up to the limit for the format of
1048576 rows:

    $ python -c 'import openpyxl; w = openpyxl.load_workbook("odoo/addons/base/static/xls/res_partner.xlsx", data_only=True, read_only=True); print(sum(1 for _ in w.worksheets[0]))'
    1048576

even though the file only has 4 rows (including the header).

This means any client which uses this file as basis to create their
own export (or a method generating similarly odd / corrupted files)
requires parsing on the order of 20~30 million cells to try and import
the file, even though in reality they might only have a few dozens or
hundreds.

As a result the import *attempt* takes several minutes (4~5 locally,
maybe a bit less on beefy server) and ~1.7GB memory, and thus
routinely fails if the worker has any sort of existing
pressure (e.g. well filled caches) as it hits the hard memory
limit (2.5G by default).

Using the "less efficient" standard mode, the ingestion takes ~1.4s
and 14.5MB memory. Which is still a far cry less efficient than
xlrd.xlsx was (~0.00 seconds and 120k) but at least somewhat
reasonable...

The issue has been reported upstream at
https://foss.heptapod.net/openpyxl/openpyxl/-/issues/2221

closes odoo#177621

X-original-commit: b19ef6c
Signed-off-by: Xavier Morel (xmo) <[email protected]>
Before this commit:
- Pressing Enter after selecting all columns in a row would break the table
  format.

After this commit:

- Now, when the Enter key is pressed, all the contents of the anchor <td>
  will be removed first, and then the Enter process within that <td> will
  be executed.

task:3557503

Part-of: odoo#139312
Signed-off-by: David Monjoie (dmo) <[email protected]>
Before this commit:
- when selecting multiple rows or columns inside a table in Firefox, the
  selection would shift to the table row, causing the original selection to
  be lost.

After this commit:

- Now, the original selection is preserved during multi-row or multi-column
  selection operations in Firefox.

task:3557503

closes odoo#139312

Signed-off-by: David Monjoie (dmo) <[email protected]>
UBL rule DK-R-005 limits the options available for the payment means.
Currently, we have a hard-coded value of 30 for every invoice, because it is not
possible to deduce the right payment means code at the moment.
In OIOUBL we hard-code this field to `unknown` as it has the same UBL rule.

With this commit we can use a different value for DK partners.
In the future we could try to populate it dynamically.

See also:
https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-peppol/DK-R-005/

opw-4080715

closes odoo#177430

Signed-off-by: Wala Gauthier (gawa) <[email protected]>
Issue: When trying to resend a mail authored by any other user as
an administrator, we are going to receive a "Delivery Failed" error even
though the mail has been sent, this is caused by the message_type being
equal to user_notification, in which case the user will not have the
needed access in the process to write on this email.

Steps to reproduce:

Send any email as Demo, so they stay in queue for seding under mails.
Go to mails as admin now and try to send the mail manually.
(You can use a meeting for example to send the mail, create a meeting
and send the mail to notify this meeting.)

Solution:

Since we are not interested right now in adding an extra sudo to allow
this behavior, we are going to hide the buttons for this case, so the
user can set the mail to retry, but then instead of being able to send
it at the moment by himself we will need to wait for the cron.

opw-3963124

closes odoo#177098

X-original-commit: 608540b
Signed-off-by: Maruan Aguerdouh Mohtar (magm) <[email protected]>
Steps to reproduce:

- Enable Multi-Step Routes in the settings
- Go to Inventory > Configuration > Warehouse Management > Routes
- Unarchive MTO
- Create a storable product:
  - Routes: MTO, manufacture
  - With a bom
  - On hand qty: 10
- Create an SO for 15 units and validate
- Go back to your product form > forecasted Report
> Even thought 15 units are made to order 10 units are reported to be
> taken from stock to fulfill the SO

Cause of the issue:

The lines appearing on the reported are computed by the
`_get_report_lines` method. During this call, the quantity taken from
stock is computed by comparing the demand of the out moves with the
quantity currently in stock:
https://github.com/odoo/odoo/blob/1fdccad664cad37a69dc960444aa0c318d1bf464/addons/stock/report/report_stock_forecasted.py#L218-L223
This is incorrect because the quantity taken from stock is null if the
procure_method of the out move is make_to_stock.

Note:

The issue is not reproducible since 17.0 since the _get_report_lines has
been refactored during the stockpocalypse.

opw-4010785

closes odoo#177273

X-original-commit: a0c0875
Signed-off-by: William Henrotin (whe) <[email protected]>
Signed-off-by: Lancelot Semal (lase) <[email protected]>
Problem: The tax group name is not translated to
Arabic.

Purpose: Display the Arabic translation of the
tax group name as well to stay consistent with
the report.

Steps to Reproduce:
1. Install l10n_sa
2. Switch to SA company
3. Add Arabic as a language
4. Add an Arabic translation for a tax group name
5. Change a contact's language to Arabic
6. Create an invoice with the Arabic contact and
a tax from the same tax group
7. Preview or Print and observe that the tax group name
is not translated to Arabic

opw-4094196

closes odoo#177307

Signed-off-by: de Wouters de Bouchout Jean-Benoît (jbw) <[email protected]>
Added modules to load in `odoo.conf` for IoT Box v24.08 compatibility.

v24.08 PR: odoo#169633

closes odoo#177781

Task: 3947355
X-original-commit: 8c564e1
Signed-off-by: Yaroslav Soroko (yaso) <[email protected]>
It is necessary to wrap the tab names in _lt to make
them translatable into the various languages offered by Odoo.

Before these changes, the tab names are always in English.

After these changes, when translations are added to the terms,
they will appear translated into the selected language.

closes odoo#177724

Signed-off-by: David Monjoie (dmo) <[email protected]>
Issue:

    When creating a kit BoM with two components that the total
    of their cost share is 100, we get this UserError when saving:
    'The total cost share for a BoM's components has to be 100%.'"

Steps To Reproduce:

    - Create a BoM of type Kit.
    - Add 2 components.
    - Set their cost shares to 99.99 and 0.01.
    - Save and Notice the error: "The total cost share for a BoM's component have to be 100"

Solution:

    - After saving, the `float_round` method is eventually called.
    When it reaches the line `result = rounded_value * rounding_factor`
    with `rounded_value = 9999.0` and `rounding_factor = 0.01`,
    it returns `99.99000001`.
    - A possible fix is to modify the method to include a condition
     before returning the result:
    ` if precision_digits or precision_rounding:
        decimal_places = precision_digits or len(str(precision_rounding).split('.')[1])
        return round(result, decimal_places)`
    - However, I believe this fix is too low-level, so I kept it simple
    by rounding the bom.lines before summing them and returning the UserError.

opw-4100375

closes odoo#177015

Signed-off-by: Adrien Widart (awt) <[email protected]>
Steps to reproduce:
- Install timesheets, project and accounting
- Enable "Analytic accounting" in accounting settings
- Accounting > Accounting > Analytic items
- Goup by Billing type
- 2 different 'Materials'

Change was made in 3d3f410. This is
ambiguous and clashes with the previously used items in 15.0.
https://github.com/odoo/odoo/blob/ec106bfaaede527857a028bf1956b309aad3dc51/addons/sale_timesheet/models/account.py#L17

opw-4080234

closes odoo#177388

Signed-off-by: Xavier Bol (xbo) <[email protected]>
install module

* PROPBLEM: since odoo#173719 we have moved
from init to post_init which will make timesheet_task_id of
hr.leave.type can't set value because in post_init
company.leave_timesheet_task_id will be set

* SOLUTION: fill it in post_init instead

closes odoo#177585

X-original-commit: de3c30e
Signed-off-by: Xavier Bol (xbo) <[email protected]>
@ThomasBinsfeld ThomasBinsfeld force-pushed the 16.O-split_get_last_sequence_domain-hda branch from 575b5f8 to c2dc8cc Compare August 26, 2024 14:28
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.