Tuesday, April 22, 2025
18 changes · 17.0
Enhancements to existing features
The Spanish localization now places account 466 in the common accounting template so it appears in the required abbreviated balance report. This aligns reporting setup with current Spanish legislation and helps affected businesses produce compliant financial statements.
Original PR description
Under the current legislation the account 466 must be in the report "Balance Abreviado" https://www.boe.es/buscar/act.php?id=BOE-A-2007-19884&tn=1&p=20210130 https://www.boe.es/buscar/act.php?id=BOE-A-2011-18458 Manual fwport of https://github.com/odoo/odoo/pull/202100
The Spanish balance sheet reports now include account 466 in the simplified balance report as required by current legislation. This helps companies using Spanish localization produce reports that better match official accounting rules.
Original PR description
Under the current legislation the account 466 must be in the report "Balance Abreviado" https://www.boe.es/buscar/act.php?id=BOE-A-2007-19884&tn=1&p=20210130 https://www.boe.es/buscar/act.php?id=BOE-A-2011-18458 Manual fwport of https://github.com/odoo/enterprise/pull/80749
Resolved issues and error corrections
Users splitting an expense can now adjust the tax field directly in the split wizard. This fixes a restriction that could prevent accurate tax allocation, helping expense records better reflect the intended accounting details.
Original PR description
This commit remove the readonly on the tax_ids field, in the expense_split wizard. task-4703493
Miscellaneous changes
During tests some components were unmounted before the number buffer finished handling the input. This was causing an error in the order object which was finalized. Runbot error: 163213 Forward-Port-Of: odoo/odoo#206430
Original PR description
During tests some components were unmounted before the number buffer finished handling the input. This was causing an error in the order object which was finalized. Runbot error: 163213 Forward-Port-Of: odoo/odoo#206430
This fix makes Odoo's web interface handle a wider range of internal data safely when copying information in the background. It reduces the risk of errors during maintenance fixes without changing visible behavior for users.
Original PR description
The current implementation of deepCopy only supports fully JSON stringifiable objects but its behaviour was modified in later versions to support `undefined` as well. This commit backports that change as it does not break the current behaviour and reduces the chances of an unfortunate error in bugfixes. Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Hungarian electronic invoice reports now show product code labels without an extra space before the colon. This small formatting correction makes invoices look cleaner and match the expected syntax.
Original PR description
Changing the syntax of the product code line in the invoice to not have a space before the colon. Example: `VTSZ : 8604000` -> `VTSZ: 8604000` task-4707459
The countdown block’s due date field now uses a text color that remains clearly visible on its dark background. This makes selecting and reviewing dates in the website editor easier and reduces confusion for content editors.
Original PR description
The text color in the input is purple and not clearly visible with the dark input background. Steps to reproduce: ------------------- * Go to edit mode. * Drag and drop a "countdown" block. * Open the date picker by clicking the "Due Date" input in the options. * Click on a date. > Observation: Why the fix: ------------ Make it visible opw-4589158 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Swiss QR payment codes are no longer shown on draft invoices, ensuring they only appear when the invoice is valid and finalized. This prevents customers or staff from using payment details before the document is ready, reducing confusion and errors in Swiss invoicing workflows.
Original PR description
Through the many iteration, one of the condition was removed: https://github.com/odoo/odoo/pull/198498 and `move.display_qr_code` is not enough to translate the apparently necessary condition `move.company_id.account_fiscal_country_id.code == 'CH'` https://github.com/odoo/odoo/commit/84152f2d65712b1c21d1e627a3801e94db3c3992 Testing the flow is quite complex without tour hence the the `assert` opw-4585574
This fix limits Chilean VAT formatting changes to invoice reports only, instead of affecting all XML-based outputs. It helps prevent unintended formatting issues in other documents while keeping invoice tax information displayed correctly.
Original PR description
This corrects 9f96aa7648ed4320849c6736e85b9cb6c988232c that was impacting all xml files whereas it should only have had an impact on the invoice report. opw-4661577
Users can now return from an accounting report customization view by clicking the report name without encountering an error. This keeps the navigation experience consistent across accounting reports and prevents disruption while configuring reports.
Original PR description
Steps to reproduce:
- Open any accounting report
- Click on the wheel to customize it
- Try to come back to the report by using the name's report
Issue:
When customizing any accounting report in V17, attempting to exit the view via the report's name (as done in other reports) throws an OwlError Traceback:
`Invalid props for component 'AccountReport': unknown key 'state'`
This happens because the 'state' prop is passed to the component but not declared as a valid prop. This commit adds 'state' as an optional prop to avoid the error and ensure consistent behavior across customized reports.
opw: 4708540The Field Service product catalog now correctly uses the related sales order when one is not passed directly. This ensures added products display their quantity information properly, making it easier for users to review items on field service orders.
Original PR description
### Steps to reproduce: - Create a task in Field Service - Navigate to the product's catalog through the smart button - Add some products to the SO - Filter with 'Added products' - Notice the quantity bar is not shown ### Cause: This is happening as when click on the product smart button we are passing the order_id in the context to get the order lines info https://github.com/odoo/enterprise/blob/6e7525e0e0c2858e028694e9227077b2275d88c5/industry_fsm_sale/static/src/components/product_catalog/kanban_model.js#L21-L26 but if we still didn't create an order for this task order_id will be false, so it won't have an order to fetch its data and will just add the default data where the quantity will be 0 https://github.com/odoo/enterprise/blob/6e7525e0e0c2858e028694e9227077b2275d88c5/industry_fsm_sale/models/sale_order.py#L45-L48 ### Fix: If we have a fsm_task we can fallback on its order_id if order_id is false. opw-4712922
This change reverts an earlier adjustment that unintentionally affected generated Chilean electronic document XML files. The VAT formatting change is kept limited to invoice reports, reducing the risk of unexpected changes in official electronic document outputs.
Original PR description
This reverts commit cbcff76a94750a6759fd72d9c952d785e603a974. Fix in community was changing all the xml files generated, whereas it should only have had an impact on the invoice report. opw-4661577
Duplicating an Indian employee record now leaves unique payroll identifiers such as UAN, PAN, and ESIC blank on the new record. This prevents duplication from failing because the copied record would otherwise reuse values that must stay unique.
Original PR description
The UAN, PAN and ESIC number fields on the IN employee have a unique constraint. However, they are not set to not being copied upon record duplication, which would cause duplication impossible. This PR fixes the issue by not copying the value of those field upon duplication. task-4708324
This update fixes an error that could appear when users returned to an accounting report from the breadcrumb after opening a related partner form. It improves reliability for accounting report navigation, especially in debug mode.
Original PR description
Steps to reproduce: 1. Open any Accounting Report. For example, 'Partner Ledger' 2. Open any 'Partner Form View' for UI change. 3. Again, go to the report from 'breadcrumb' (In Debug Mode). => Traceback Props validation was missing of `state` in `AccountReport` component, which will be added with this PR. Support Ticket: https://www.odoo.com/odoo/project/49/tasks/4741316
According to [last update from PGCE](https://www.boe.es/buscar/act.php?id=BOE-A-2007-19884&tn=1&p=20241221) and the accounting standards inside it: >3.º Principios contables La contabilidad de la empresa y, en especial, el registro y la valoración de los elementos de las cuentas anuales, se desarrollarán aplicando obligatoriamente los principios contables que se indican a continuación: > >1. Empresa en funcionamiento. Se considerará, salvo prueba en contrario, que la gestión de la empresa
Original PR description
According to [last update from PGCE](https://www.boe.es/buscar/act.php?id=BOE-A-2007-19884&tn=1&p=20241221) and the accounting standards inside it: >3.º Principios contables La contabilidad de la…
According to [last update from PGCE](https://www.boe.es/buscar/act.php?id=BOE-A-2007-19884&tn=1&p=20241221) and the accounting standards inside it: >3.º Principios contables La contabilidad de la empresa y, en especial, el registro y la valoración de los elementos de las cuentas anuales, se desarrollarán aplicando obligatoriamente los principios contables que se indican a continuación: > >1. Empresa en funcionamiento. Se considerará, salvo prueba en contrario, que la gestión de la empresa continuará en un futuro previsible, por lo que la aplicación de los principios y criterios contables no tiene el propósito de determinar el valor del patrimonio neto a efectos de su transmisión global o parcial, ni el importe resultante en caso de liquidación. > >En aquellos casos en que no resulte de aplicación este principio, en los términos que se determinen en las normas de desarrollo de este Plan General de Contabilidad, la empresa aplicará las normas de valoración que resulten más adecuadas para reflejar la imagen fiel de las operaciones tendentes a realizar el activo, cancelar las deudas y, en su caso, repartir el patrimonio neto resultante, debiendo suministrar en la memoria de las cuentas anuales toda la información significativa sobre los criterios aplicados. > >2. Devengo. Los efectos de las transacciones o hechos económicos se registrarán cuando ocurran, imputándose al ejercicio al que las cuentas anuales se refieran, los gastos y los ingresos que afecten al mismo, con independencia de la fecha de su pago o de su cobro. > >3. Uniformidad. Adoptado un criterio dentro de las alternativas que, en su caso, se permitan, deberá mantenerse en el tiempo y aplicarse de manera uniforme para transacciones, otros eventos y condiciones que sean similares, en tanto no se alteren los supuestos que motivaron su elección. De alterarse estos supuestos podrá modificarse el criterio adoptado en su día; en tal caso, estas circunstancias se harán constar en la memoria, indicando la incidencia cuantitativa y cualitativa de la variación sobre las cuentas anuales. > > 4. Prudencia. Se deberá ser prudente en las estimaciones y valoraciones a realizar en condiciones de incertidumbre. La prudencia no justifica que la valoración de los elementos patrimoniales no responda a la imagen fiel que deben reflejar las cuentas anuales. > > Asimismo, sin perjuicio de lo dispuesto en el artículo 38 bis del Código de Comercio, únicamente se contabilizarán los beneficios obtenidos hasta la fecha de cierre del ejercicio. Por el contrario, se deberán tener en cuenta todos los riesgos, con origen en el ejercicio o en otro anterior, tan pronto sean conocidos, incluso si sólo se conocieran entre la fecha de cierre de las cuentas anuales y la fecha en que éstas se formulen. En tales casos se dará cumplida información en la memoria, sin perjuicio de su reflejo, cuando se haya generado un pasivo y un gasto, en otros documentos integrantes de las cuentas anuales. Excepcionalmente, si los riesgos se conocieran entre la formulación y antes de la aprobación de las cuentas anuales y afectaran de forma muy significativa a la imagen fiel, las cuentas anuales deberán ser reformuladas. > > Deberán tenerse en cuenta las amortizaciones y correcciones de valor por deterioro de los activos, tanto si el ejercicio se salda con beneficio como con pérdida. > > 5. No compensación. Salvo que una norma disponga de forma expresa lo contrario, no podrán compensarse las partidas del activo y del pasivo o las de gastos e ingresos, y se valorarán separadamente los elementos integrantes de las cuentas anuales. > > 6. Importancia relativa. Se admitirá la no aplicación estricta de algunos de los principios y criterios contables cuando la importancia relativa en términos cuantitativos o cualitativos de la variación que tal hecho produzca sea escasamente significativa y, en consecuencia, no altere la expresión de la imagen fiel. Las partidas o importes cuya importancia relativa sea escasamente significativa podrán aparecer agrupados con otros de similar naturaleza o función. > > En los casos de conflicto entre principios contables, deberá prevalecer el que mejor conduzca a que las cuentas anuales expresen la imagen fiel del patrimonio, de la situación financiera y de los resultados de la empresa. For item 5, assets and liabilities, income and expenses shall not be offset, unless required or permitted by a standard. Therefore, group 55 accounts should be presented: - On the assets side if they have a debit balance. - On the liabilities side if they have a credit balance. - Without offsetting each other. @moduon MT-9820 @chklop @jco-odoo @rafaelbn Forward-Port-Of: odoo/enterprise#82976
-- How to reproduce -- Duplicate two or more belgian employees. -- Reason -- The sdworx code check constraint was wrongly single record. -- Fix -- This commit fixes the issue by converting the check to multi records. task-4708324 Forward-Port-Of: odoo/enterprise#83026
Original PR description
-- How to reproduce -- Duplicate two or more belgian employees. -- Reason -- The sdworx code check constraint was wrongly single record. -- Fix -- This commit fixes the issue by converting the check to multi records. task-4708324 Forward-Port-Of: odoo/enterprise#83026
…terms Steps to reproduce: - With an ES company setup - Create 1 invoice to an EU partner with the payment term "30% Now, Balance 60 Days" - Make sure Mod349 Invoice Type is set - Go to Accounting / Reporting / Statement Reports / Tax Report - Select Tax Report (Mod 349) (ES) Issue: Amount shown on lines "Total amount of intra-community operations" and "E. Intra-community sales" is doubled. This occurs because each installment of the payment terms will be a payment term line, an
Original PR description
…terms Steps to reproduce: - With an ES company setup - Create 1 invoice to an EU partner with the payment term "30% Now, Balance 60 Days" - Make sure Mod349 Invoice Type is set - Go to Accounting / Reporting / Statement Reports / Tax Report - Select Tax Report (Mod 349) (ES) Issue: Amount shown on lines "Total amount of intra-community operations" and "E. Intra-community sales" is doubled. This occurs because each installment of the payment terms will be a payment term line, and the query retrieving values to compose MOD349 will take the whole move amount for each payment term line. opw-4637439 Forward-Port-Of: odoo/enterprise#82435
Sale orders have to be created during the test, which can fail if the test user does not have the right ACLs. The creation of the SOs seem to be just setup for what the tests want to check, so just sudo into them. https://runbot.odoo.com/odoo/error/163653 Forward-Port-Of: odoo/enterprise#83717
Original PR description
Sale orders have to be created during the test, which can fail if the test user does not have the right ACLs. The creation of the SOs seem to be just setup for what the tests want to check, so just sudo into them. https://runbot.odoo.com/odoo/error/163653 Forward-Port-Of: odoo/enterprise#83717