Friday, April 16, 2021
16 changes · master
Enhancements to existing features
Belgian payroll declaration files are now saved directly in Odoo, making it easier to keep a reliable history and access them without the Documents app. The 281.10 and 281.45 declaration processes were also corrected and updated so businesses can generate validated, compliant yearly reports more reliably.
Original PR description
Purpose ======= Each months or year, some reports have to be done to the state. Currently there were some wizards to generate the files (XML, PDF, XLS, ...), and a brige with the document application…
Purpose ======= Each months or year, some reports have to be done to the state. Currently there were some wizards to generate the files (XML, PDF, XLS, ...), and a brige with the document application to publish them in the Payroll Folder. However, this is problematic for the following reasons: - It is difficult to keep a clean history of what has been done, as the transient are garbage collected. - Customers without the document application cannot keep the files safely in their odoo db. - The integration with documents is not clean, it is possible to post the documents several times without even knowing that they are created. The idea of this PR is to convert all those Transient models into classic models, stored in the database. While doing this, it was noticed that the 281.10 and 281.45 declarations where obsolete/wrong because: - A XML file was generated for each employee instead of a global 281.10 declaration. The idea of the structured files is to declare the employee in batch. Instead of using a qweb template, the XML was built using etree, which is not clean at all, and difficult to maintain. - No XML file was generated for the 281.45 declaration. - The XML files weren't validated using a XSD file, and they were outdated / incomplete / wrong. - The PDF files were not valid anymore. Specification ========== 1/ Store the wizards to generate the 273S, 274.XX, 281.10 and 281.45 declarations. 2/ Update and fix the 281.10, 281.45 declaration flows. TaskID: - 2501286 - 2506143 - 2508086
The Chilean electronic stock documents and US 1099 localization modules now use the updated module icon. This keeps the app list visually consistent and easier to recognize for users browsing localization tools.
Original PR description
Purpose of the task is to update remaning l10n modules icon with new icon. So in this commit, Updated remaning l10n modules icon with new icon. TaskID: 2497322
Belgian payroll contracts now record the employee's age at the time the contract is created. This helps HR teams quickly choose the correct impulsion plan when age-based eligibility matters.
Original PR description
Add the employee's age at contract creation to have a fast way to select the right impulsion plan if necessary. Task ID: 2504458
Appraisal managers can now see results for every feedback survey template used in an appraisal, instead of only the most recent one. This makes it easier to review complete feedback when multiple survey formats were requested.
Original PR description
Currently, in appraisal when multiple feedbacks with different templates are requested the "Feedback Survey" button only shows result of the latest used feedback template. By this commit, when multiple feedbacks are requested Feedback Survey button shows records of all the feedback survey templates used inside an appraisal. Where result of each template can be viewed seperately. **TaskID: 2465073**
Project pricing setup is simplified by automatically determining the pricing type from the invoicing configuration instead of asking users to choose it manually. Sales order item selection is also made more flexible for field service and helpdesk workflows, while related buttons and tests are updated to match the new behavior.
Original PR description
Purpose ====== With the fixs we've made in project, the difference between the various rates grows thinner. Currently, the only thing that makes a difference is whether an SO is defined on the…
Purpose
======
With the fixs we've made in project, the difference between the various rates grows thinner. Currently, the only thing that makes a difference is whether an SO is defined on the project or not. We should simplify these very similar concepts for the user.
In fact, the user will not choose the pricing type anymore, he will configure what he wants and the pricing_type is computed based on it.
## Details
- The pricing_type field in the project will be a compute non-stored field and this field will not be visible in the UI.
Based on this,
- the condition is updated on the fields visibility was impacted by this field. Because the pricing_type field is now computed based on the configuration in the Invoicing page of the project form view.
- a unit test is updated to keep its initial behaviour.
- the visibility of the create sales order button is updated.
- The sales order item in ticket and task is no longer filter when the sales order in the project is defined. That is the user can select any sales order items for the customer of the task/ticket.
- (POC) convert the sales order in the project into a related field, the main changes are done in community, here, the views and unit tests using the sales order are updated.
- find sales order item when the partner is different in the ticket and the linked project.
task-2442683
Community PR: odoo/odoo#66181
Upgrade PR: odoo/upgrade#2164Manufacturing users can now change which bill of materials an operation belongs to and reuse existing operations, including related quality checks, when updating a bill of materials. This makes production setup faster and helps keep quality checks aligned with the right products when operations change.
Original PR description
Ease bill of material - operation configuration. - allow to change the BoM of an operation, - allow to update a BoM by duplicating existing operations(& quality points), - by extension, changing the operation of a quality point update the products. task: 2413246
The calendar event form has been adjusted to stay consistent with recent changes to the calendar layout. This helps ensure appointment-related information remains visible only to the right users after fields were moved between tabs.
Original PR description
# Purpose Adapt the calendar event view with the calendar changes # Specifications Since the tab "Misc" was removed and the user_id field moved in another tab, we need to add the groups attribute for the field appointment_type_id. task-2196775
Resolved issues and error corrections
This fixes an error in the calculation used when indexing employee contracts, helping payroll teams apply salary adjustments more accurately. The default note now also includes the indexed percentage, making the change clearer for users reviewing contract updates.
Original PR description
Fix the math when indexing contracts. Also changes the default indexing note to contain the indexed percentage. Task ID: 2495509
Features or functions removed from Odoo
Unused Belgian payroll logic for an obsolete reimbursed amount field was removed, along with related test data and tests. This cleanup reduces maintenance effort without changing expected payroll behavior for users.
Original PR description
Remove dead code and its related tests. Task Id: 2496602
Miscellaneous changes
Steps: - Install data_merge, product - Go to Data Cleaning / Configuration / Rules / Deduplication - Create a new rule: - Model: Product - Deduplication Rules: - Barcode (product.product) - Deduplicate Bug: UserError: Missing required PostgreSQL extension: unaccent Explanation: Whenever the SQL query is not valid, a UserError is raised claiming that the extension `unaccent` is missing. This commit raises the original error if it has nothing to do with missing this exten
Original PR description
Steps:
- Install data_merge, product
- Go to Data Cleaning / Configuration / Rules / Deduplication
- Create a new rule:
- Model: Product
- Deduplication Rules:
- Barcode (product.product)
- Deduplicate
Bug:
UserError: Missing required PostgreSQL extension: unaccent
Explanation:
Whenever the SQL query is not valid, a UserError is raised claiming that
the extension `unaccent` is missing.
This commit raises the original error if it has nothing to do with
missing this extension.
The original error was due to the fact that the model has a `company_id`
field, but it's inherited.
This commit uses the ORM to rework the query and add inherited tables.
This should work since we filter out the non-stored related fields:
https://github.com/odoo/enterprise/blob/74efaf093b44d224dd4fd4868de595269099b2c6/data_merge/models/data_merge_rule.py#L13-L15
opw:2476683
Forward-Port-Of: odoo/enterprise#17404The custom Intrastat report for the Netherlands localization showed the wrong sign (- instead of +) on some of the lines. In v13.0, the field account_invoice.amount_total_signed became account_move.amount_total_signed, but the computed value has shifted from being negative on refunds only, to be negative for every move that has move_type != 'entry'. This behaviour wasn't taken into consideration in the intrastat report. Ticket link: https://www.odoo.com/web#model=project.task&id=24802
Original PR description
The custom Intrastat report for the Netherlands localization showed the wrong sign (- instead of +) on some of the lines. In v13.0, the field account_invoice.amount_total_signed became account_move.amount_total_signed, but the computed value has shifted from being negative on refunds only, to be negative for every move that has move_type != 'entry'. This behaviour wasn't taken into consideration in the intrastat report. Ticket link: https://www.odoo.com/web#model=project.task&id=2480243 opw-2480243 Forward-Port-Of: odoo/enterprise#17722
The tests are failing because the data on the expected XML was not updated with the mandatory fields that have being updated lately. Related to the data uploaded to this PR https://github.com/odoo/enterprise/pull/17188/files Forward-Port-Of: odoo/enterprise#17743
Original PR description
The tests are failing because the data on the expected XML was not updated with the mandatory fields that have being updated lately. Related to the data uploaded to this PR https://github.com/odoo/enterprise/pull/17188/files Forward-Port-Of: odoo/enterprise#17743
a.- SPOT: AKA Witholding peruvian system [Detracciones]. For perú if you do an invoice above 700 Soles you need to inform the customer how much is the withholding that must be done. This withholding is an actual payment that must be done to the **Banco de la Nación** to an account that must be informed in the document as a paymentMean. Source: https://orientacion.sunat.gob.pe/index.php/empresas-menu/regimen-de-detracciones-del-igv-empresas/como-funcionan-las
Original PR description
a.- SPOT: AKA Witholding peruvian system [Detracciones].
For perú if you do an invoice above 700 Soles you need to
inform the customer how much is the withholding that must be done.
This withholding is an actual payment that must be done to
the **Banco de la Nación** to an account that must be informed
in the document as a paymentMean.
Source:
https://orientacion.sunat.gob.pe/index.php/empresas-menu/regimen-de-detracciones-del-igv-empresas/como-funcionan-las-detracciones
b.- Resolution: N.º 000193-2020/SUNAT
For now the fields are only observations but from Sept 01
will be mandatory (Article 1).
Source:
https://www.sunat.gob.pe/legislacion/superin/2020/193-2020.pdf
Forward-Port-Of: odoo/enterprise#17569
Forward-Port-Of: odoo/enterprise#17188Forward-Port-Of: odoo/enterprise#17586 Forward-Port-Of: odoo/enterprise#17578
Original PR description
Forward-Port-Of: odoo/enterprise#17586 Forward-Port-Of: odoo/enterprise#17578
The XE.COM /currencytables/ page seems to have been updated with: - change to structure - update that are daily with delay before rate is shown This commit change code to adapt to new HTML structure. opw-2502881 opw-2503161 opw-2504585 opw-2507051 opw-2503944 opw-2507736 opw-2507512 opw-2507967 opw-2507459 opw-2506940 Forward-Port-Of: odoo/enterprise#17666
Original PR description
The XE.COM /currencytables/ page seems to have been updated with: - change to structure - update that are daily with delay before rate is shown This commit change code to adapt to new HTML structure. opw-2502881 opw-2503161 opw-2504585 opw-2507051 opw-2503944 opw-2507736 opw-2507512 opw-2507967 opw-2507459 opw-2506940 Forward-Port-Of: odoo/enterprise#17666
Hong Kong doesn't have zip codes, so we have to remove it from required_fields for UPS opw-2495248 Forward-Port-Of: odoo/enterprise#17577
Original PR description
Hong Kong doesn't have zip codes, so we have to remove it from required_fields for UPS opw-2495248 Forward-Port-Of: odoo/enterprise#17577