Wednesday, October 6, 2021
37 changes · master
Enhancements to existing features
This update modernizes core parts of Odoo's web interface, including navigation, menus, dialogs, dashboards, calendars, and messaging-related screens. It should make the user experience more consistent and reliable across several apps while also laying groundwork for future interface improvements.
Original PR description
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
This update removes shared Latin American invoice calculation fields from the common module and moves the logic into the Argentina and Chile localization modules where it is actually used. Business impact is limited to maintaining correct invoice reports for those countries while reducing unnecessary shared complexity.
Original PR description
**Description of the issue/feature this PR addresses:** Fields removed from l10n_latam: * l10n_latam_amount_untaxed * l10n_latam_tax_ids * l10n_latam_price_unit * l10n_latam_price_subtotal * l10n_latam_price_net Methods removed from l10n_latam: * compute_l10n_latam_prices_and_taxes * compute_l10n_latam_amount_and_taxes * _compute_invoice_taxes_by_group Move the removed methods to l10n_ar and l10n_cl and now it returns a dictionary with the removed fields as the keys. Also, adapt the invoices reports to get the required values from the new methods for each localization. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Resolved issues and error corrections
This update corrects several point of sale issues involving refunds, taxes, discounts, and coupon rewards. It helps cashiers process refunds more accurately, prevents mistaken removal of active promotions, and ensures eligible products still receive the right promotional discounts.
Original PR description
Forward port of https://github.com/odoo/odoo/pull/75929 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
Before this PR: If expense app is used, it is not possible to register expenses in purchase journal Current behavior before PR: This is allowed. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77829 Forward-Port-Of: odoo/odoo#77651
Original PR description
Before this PR: If expense app is used, it is not possible to register expenses in purchase journal Current behavior before PR: This is allowed. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77829 Forward-Port-Of: odoo/odoo#77651
Point of sale invoices no longer add duplicate payment details because that information is now already included by the standard invoice layout. This keeps customer invoices clearer and avoids repeated payment references.
Original PR description
Forward port of https://github.com/odoo/odoo/pull/75844 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update fixes several Point of Sale issues around refunds, discounts, taxes, coupons, and invoice payment details. It helps cashiers process refunds more accurately, prevents accidental coupon removal, and avoids duplicate or incorrect payment information on invoices.
Original PR description
Forward port of: * https://github.com/odoo/odoo/pull/75844 * https://github.com/odoo/odoo/pull/75929 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update corrects how electronic invoicing data is converted for transmission, preventing formatting errors caused by Base64 handling. It helps ensure Italian e-invoices and proxy registration data are prepared correctly and sent more reliably.
Original PR description
When encoding a string or bytes with base64, the resulting byte string must be decoded to get the string back. * `addons/account_edi_proxy_client/models/account_edi_proxy_user.py` AccountEdiProxyUser._register_proxy_user() * `addons/l10n_it_edi/models/account_invoice.py` AccountMove._prepare_fatturapa_export_values() * `addons/l10n_it_edi_sdicoop/models/account_edi_format.py` AccountEdiFormat._l10n_it_post_invoices_step_1()
Click on an attachment from a public thread view will now open it in an attachment viewer. Forward-Port-Of: odoo/odoo#77893
Original PR description
Click on an attachment from a public thread view will now open it in an attachment viewer. Forward-Port-Of: odoo/odoo#77893
This commit will display the name of the current guest in the thread view top bar and make it editable. Forward-Port-Of: odoo/odoo#77769
Original PR description
This commit will display the name of the current guest in the thread view top bar and make it editable. Forward-Port-Of: odoo/odoo#77769
Before this commite, when an attachment is deleted, there is no notification and other client do not update the attachment status. task-2635516 Forward-Port-Of: odoo/odoo#77410
Original PR description
Before this commite, when an attachment is deleted, there is no notification and other client do not update the attachment status. task-2635516 Forward-Port-Of: odoo/odoo#77410
PURPOSE When editing the opportunity from font end , all the activity types are listed in the drop-down, even those which are specific to other models. SPECIFICATIONS We should display only the activity types in drop-down which are either specific for `crm.lead` or those which are not linked with any models which are common for all. LINKS PR #76567 TaskID 2443894 Forward-Port-Of: odoo/odoo#76567
Original PR description
PURPOSE When editing the opportunity from font end , all the activity types are listed in the drop-down, even those which are specific to other models. SPECIFICATIONS We should display only the activity types in drop-down which are either specific for `crm.lead` or those which are not linked with any models which are common for all. LINKS PR #76567 TaskID 2443894 Forward-Port-Of: odoo/odoo#76567
In some conditions, confirming an invoice will raise an Odoo Server Error due to a division by zero. To reproduce the issue: (Need sale_management) 1. Create a product category PC: - Costing Method: Average Cost (AVCO) - Inventory Valuation: Automated 2. Create a product P: - Product Type: Storable - Category: PC - Cost: 50 3. Create a sale order SO: - 5 x P 4. Confirm and process the delivery D 5. Edit P: - Cost: 40 6. Open D and create a return R:
Original PR description
In some conditions, confirming an invoice will raise an Odoo Server Error due to a division by zero. To reproduce the issue: (Need sale_management) 1. Create a product category PC: - Costing Method:…
In some conditions, confirming an invoice will raise an Odoo Server
Error due to a division by zero.
To reproduce the issue:
(Need sale_management)
1. Create a product category PC:
- Costing Method: Average Cost (AVCO)
- Inventory Valuation: Automated
2. Create a product P:
- Product Type: Storable
- Category: PC
- Cost: 50
3. Create a sale order SO:
- 5 x P
4. Confirm and process the delivery D
5. Edit P:
- Cost: 40
6. Open D and create a return R:
- 1 x P without "Update quantities on SO/PO"
7. Process R
8. In Inventory, create a transfer T:
- Operation Type: Receipt
- 1 x P
9. Process T
10. Back to SO, create an invoice and post it
Error: an Odoo Server Error is raised: "ZeroDivisionError: float
division by zero"
When validating the transfer T, a stock valuation layer is created with
a zero quantity and is linked to the first SO.order_line.move_ids (i.e.,
the SM from Stock to Customer with 5 x P)
https://github.com/odoo/odoo/blob/dfab388fdf8c7597774ff1738a1b09295c12fb49/addons/stock_account/models/product.py#L439-L450
Then, when posting the invoice, this SVL is used to make a division:
https://github.com/odoo/odoo/blob/dfab388fdf8c7597774ff1738a1b09295c12fb49/addons/stock_account/models/product.py#L690-L691
In such cases, we should ignore this SVL and use the standard price:
https://github.com/odoo/odoo/blob/dfab388fdf8c7597774ff1738a1b09295c12fb49/addons/stock_account/models/product.py#L695-L699
OPW-2647921
OPW-2646419
Forward-Port-Of: odoo/odoo#77842This commit adds a feature where users can reply to messages of other users, doing this will show a reduced version of the message that has been replied to above the message once posted, clicking on this reduced version will scroll to the original message and highlight it if that message is already loaded. task-2362251 Forward-Port-Of: odoo/odoo#75849
Original PR description
This commit adds a feature where users can reply to messages of other users, doing this will show a reduced version of the message that has been replied to above the message once posted, clicking on this reduced version will scroll to the original message and highlight it if that message is already loaded. task-2362251 Forward-Port-Of: odoo/odoo#75849
Description of the issue/feature this PR addresses: In the method _get_vat(), used to inform AFIP about the vat taxes of an invoice, we were assuming that in the journal items of the invoices there is always one line per tax group, but if the user enables the option "Include in Analytic Cost" of the tax, then it could create more than one line per tax so it will return an error if you try to validate the invoice in AFIP or upload the vat book. Steps to replicate the error: In a datab
Original PR description
Description of the issue/feature this PR addresses: In the method _get_vat(), used to inform AFIP about the vat taxes of an invoice, we were assuming that in the journal items of the invoices there…
Description of the issue/feature this PR addresses: In the method _get_vat(), used to inform AFIP about the vat taxes of an invoice, we were assuming that in the journal items of the invoices there is always one line per tax group, but if the user enables the option "Include in Analytic Cost" of the tax, then it could create more than one line per tax so it will return an error if you try to validate the invoice in AFIP or upload the vat book. Steps to replicate the error: In a database with l10n_ar localization installed. Move to a company with the Argentinean char of accounts. Create a tax with the following configuration: - Tax Computation: Percentage of Price - Include in Analytic Cost: enabled Create an electronic journal. Create an invoice with the electronic journal and multiple lines adding the tax created before and differents analytic accounts. Try to validate. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: #75802 Forward-Port-Of: odoo/odoo#77291
Automatically create and open a new channel, then start a call, on click on the "Start a meeting" button. Part of task-2651831. Original PR (closed): https://github.com/odoo/odoo/pull/76971 Forward-Port-Of: odoo/odoo#77774
Original PR description
Automatically create and open a new channel, then start a call, on click on the "Start a meeting" button. Part of task-2651831. Original PR (closed): https://github.com/odoo/odoo/pull/76971 Forward-Port-Of: odoo/odoo#77774
Forward-Port-Of: odoo/odoo#77899 Forward-Port-Of: odoo/odoo#77742
Original PR description
Forward-Port-Of: odoo/odoo#77899 Forward-Port-Of: odoo/odoo#77742
-- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77633
Original PR description
-- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77633
Prior to this commits note's kanban inner components were not aligned properly. Moreover followers' avatars and the activity widget button position were not visually consistent with the rest of the UI. This commit fixes the design and limits the maximum number of rendered avatars, adding a "+ [number]" label when the followers number crosses the threshold of 5 entries. task-2658852 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Por
Original PR description
Prior to this commits note's kanban inner components were not aligned properly. Moreover followers' avatars and the activity widget button position were not visually consistent with the rest of the UI. This commit fixes the design and limits the maximum number of rendered avatars, adding a "+ [number]" label when the followers number crosses the threshold of 5 entries. task-2658852 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77475
Reproduce : - Login to the latest runbot 14.0 (BASE, not the main!) with the admin user - Install the apps "contacts" and "calendar". - Go to contacts and create a new contact with an email - Make a new company "Company B" and make sure that this is set as default company for the administrator user. - Set two different logo's on these companies so you can differentiate them. - Create a new meeting invitation and add the contact you created in step 2 to it. - Use the "Send mail" option on
Original PR description
Reproduce : - Login to the latest runbot 14.0 (BASE, not the main!) with the admin user - Install the apps "contacts" and "calendar". - Go to contacts and create a new contact with an email - Make a…
Reproduce : - Login to the latest runbot 14.0 (BASE, not the main!) with the admin user - Install the apps "contacts" and "calendar". - Go to contacts and create a new contact with an email - Make a new company "Company B" and make sure that this is set as default company for the administrator user. - Set two different logo's on these companies so you can differentiate them. - Create a new meeting invitation and add the contact you created in step 2 to it. - Use the "Send mail" option on the meeting invite to make sure it gets sent. Then check in mailhog (it only comes in here after executing the queue cron for mails). - Now copy the link behind the "accept" button and copy it in an incognito. Result : The logo shown on the calendar invitation page is wrong as it uses the company logo from the company with ID 1 (first created company) while your logo in the email is the right one from your default company. Solution : The logo shown on the calendar invitation page is the right one from your default company. opw-2579398 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 Forward-Port-Of: odoo/odoo#75724
Slightly change the view of account_invoice_report to add a CTE to prefilter rows before joining with account_move_line. Add a multicolumn index for (product_id, move_id) on account_move_line to speed-up cess_amount computation. The speed-up depends on the the result of the CTE in l10_account_invoice_report sql view. When there is no output rows from the CTE, the speed-up for GSTR-1 reporting this month is from ~5m45 to ~35s, so close to 10. If the filter does not apply, then the ex
Original PR description
Slightly change the view of account_invoice_report to add a CTE to prefilter rows before joining with account_move_line. Add a multicolumn index for (product_id, move_id) on account_move_line to speed-up cess_amount computation. The speed-up depends on the the result of the CTE in l10_account_invoice_report sql view. When there is no output rows from the CTE, the speed-up for GSTR-1 reporting this month is from ~5m45 to ~35s, so close to 10. If the filter does not apply, then the execution time goes to ~45s so closer to 8. Some more speed-up data: - (with filter) ~10m to ~1.25m for GSTR-1 Reporting Last Year, speedup ~= 7. - (with filter) ~1m25s to ~8.5s for clicking on line in GSTR-1 Reporting this month view. speedup ~= 10. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74512 Forward-Port-Of: odoo/odoo#67190
During the adaptation from jinja to qweb, the call to the master_input was commented, This commit uncomment the call. 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 Forward-Port-Of: odoo/odoo#77863
Original PR description
During the adaptation from jinja to qweb, the call to the master_input was commented, This commit uncomment the call. 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 Forward-Port-Of: odoo/odoo#77863
We should rollback manually first to avoid concurrent access errors/deadlocks when trying to refresh microsoft calendar token. Description of the issue/feature this PR addresses: op-2630601 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 Forward-Port-Of: odoo/odoo#77901 Forward-Port-Of: odoo/odoo#75660
Original PR description
We should rollback manually first to avoid concurrent access errors/deadlocks when trying to refresh microsoft calendar token. Description of the issue/feature this PR addresses: op-2630601 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 Forward-Port-Of: odoo/odoo#77901 Forward-Port-Of: odoo/odoo#75660
In PR: #74540 the MO.date_planned_start default was updated to round up to the next hour. It was later decided this would be too confusing so this commit reverts it back to the original default of now (i.e. without any hour rounding) -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77905
Original PR description
In PR: #74540 the MO.date_planned_start default was updated to round up to the next hour. It was later decided this would be too confusing so this commit reverts it back to the original default of now (i.e. without any hour rounding) -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77905
Forward-Port-Of: odoo/odoo#77953
Original PR description
Forward-Port-Of: odoo/odoo#77953
This commit just adds a comment to enlighten a developper on how the actual data of localization is loaded. 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 Forward-Port-Of: odoo/odoo#77328
Original PR description
This commit just adds a comment to enlighten a developper on how the actual data of localization is loaded. 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 Forward-Port-Of: odoo/odoo#77328
Switching between themes sometimes fails with the following error message: > Element `<xpath expr="//header//nav">` cannot be located in parent view Reproducing the problem can be achieved by enabling the Beauty theme and switching to any other theme afterwards. The problem occurs when the Beauty theme is being disabled, just before activating the new theme. The Beauty theme (and other themes as well) replace the `website.template_header_default` template in the website layout. This pos
Original PR description
Switching between themes sometimes fails with the following error message: > Element `<xpath expr="//header//nav">` cannot be located in parent view Reproducing the problem can be achieved by…
Switching between themes sometimes fails with the following error message: > Element `<xpath expr="//header//nav">` cannot be located in parent view Reproducing the problem can be achieved by enabling the Beauty theme and switching to any other theme afterwards. The problem occurs when the Beauty theme is being disabled, just before activating the new theme. The Beauty theme (and other themes as well) replace the `website.template_header_default` template in the website layout. This poses a problem when changing to another theme afterwards because of the interaction between the website templates and the `_reset_default_config` method: 1) Since version 15.0 the `nav` tag inside the header templates was abstracted into a separate template (`website.navbar`) and added to each header layout through `t-call`. 2) The `_reset_default_config` deactivates or reactivates views that were enabled or disabled by the currently active theme. However, when doing so, the default header is activated before the custom header is deactivated. As a consequence, after toggling the default header, there are temporarily two header extensions in the `website.layout` template. They both replace the `//header//nav` element. Because of the abstraction of the `nav` element into a separate template by the header extensions, only the first replacement will work. task-2662497 Forward-Port-Of: odoo/odoo#77825
Update the image of buster for the build of the IoT Update the version of rlated build 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 Forward-Port-Of: odoo/odoo#77237
Original PR description
Update the image of buster for the build of the IoT Update the version of rlated build 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 Forward-Port-Of: odoo/odoo#77237
Correct The tax report for the tax grids 'Reverse Charge Provision' Description of the issue/feature this PR addresses: Reverse Charge Provision taxes for the UAE were not using the right tax grids Current behavior before PR:  Desired behavior after PR is merged:  Desired behavior after PR is merged:  -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77462
Issue: Getting recurrence start date from self instead of current task. commit ref.: https://github.com/odoo/odoo/commit/b50f5f17ee7140160e72bd37241efb14e14a9484 opw-2628777 Forward-Port-Of: odoo/odoo#77975 Forward-Port-Of: odoo/odoo#77971
Original PR description
Issue: Getting recurrence start date from self instead of current task. commit ref.: https://github.com/odoo/odoo/commit/b50f5f17ee7140160e72bd37241efb14e14a9484 opw-2628777 Forward-Port-Of: odoo/odoo#77975 Forward-Port-Of: odoo/odoo#77971
Issue: Getting recurrence start date with batch of tasks. commit ref.: https://github.com/odoo/enterprise/commit/5ac427e01ae82e8939987e208d4d933ee1b4c9eb opw-2628777 Forward-Port-Of: odoo/enterprise#21511 Forward-Port-Of: odoo/enterprise#21510
Original PR description
Issue: Getting recurrence start date with batch of tasks. commit ref.: https://github.com/odoo/enterprise/commit/5ac427e01ae82e8939987e208d4d933ee1b4c9eb opw-2628777 Forward-Port-Of: odoo/enterprise#21511 Forward-Port-Of: odoo/enterprise#21510
The basic salary rule account for UAE is now debit instead of credit Current behavior before PR: The credit account is set and the debit account is not Desired behavior after PR is merged: The debit account is set and the credit account is not Forward-Port-Of: odoo/enterprise#21372
Original PR description
The basic salary rule account for UAE is now debit instead of credit Current behavior before PR: The credit account is set and the debit account is not Desired behavior after PR is merged: The debit account is set and the credit account is not Forward-Port-Of: odoo/enterprise#21372
Switch corresponding test back to expect the default=now again. COM PR: odoo/odoo#77905 Forward-Port-Of: odoo/enterprise#21484
Original PR description
Switch corresponding test back to expect the default=now again. COM PR: odoo/odoo#77905 Forward-Port-Of: odoo/enterprise#21484
Steps to reproduce: - Install Documents module - Go to Documents and select any document - In the Document Inspector (right side), in the contact field, write a new contact and click on `Create`. Issue: Record not created. Cause: Not doing a 'name_create'. This is due to a refractor in 14.0 on how M2O handle field changes. Solution: Remove quick create on M2O fields. opw-2621062 Forward-Port-Of: odoo/enterprise#21449 Forward-Port-Of: odoo/enterprise
Original PR description
Steps to reproduce:
- Install Documents module
- Go to Documents and select any document
- In the Document Inspector (right side), in the contact field,
write a new contact and click on `Create`.
Issue:
Record not created.
Cause:
Not doing a 'name_create'. This is due to a refractor in 14.0 on
how M2O handle field changes.
Solution:
Remove quick create on M2O fields.
opw-2621062
Forward-Port-Of: odoo/enterprise#21449
Forward-Port-Of: odoo/enterprise#20385How to reproduce the problem: - In the Rental app -> Products - Create a new product with no Rental pricing - Create a new Order -> add the created product - Click on the "Update Prices" button, next to the Pricelist field -> An error occurs, with a traceback Cause of the problem : the case where a rental product has no pricing associated was not taken into account. Solution : if the rental product has no pricing corresponding to the order's pricelist, its list price is used instead
Original PR description
How to reproduce the problem: - In the Rental app -> Products - Create a new product with no Rental pricing - Create a new Order -> add the created product - Click on the "Update Prices" button, next to the Pricelist field -> An error occurs, with a traceback Cause of the problem : the case where a rental product has no pricing associated was not taken into account. Solution : if the rental product has no pricing corresponding to the order's pricelist, its list price is used instead. opw-2652293 Forward-Port-Of: odoo/enterprise#21458
Improve repair demo data Task-2657280 Forward-Port-Of: odoo/enterprise#21363
Original PR description
Improve repair demo data Task-2657280 Forward-Port-Of: odoo/enterprise#21363
…l gateway Purpose of query counter tests is to try to match real life use cases. In mail those generally involve a correctly configured mail gateway. This is why we set those parameters in performance tests, leading to a small increase in some counters. This is done in stable to better see evolution of those counters in various stables. Task-2661036 Prepares Task-36879 (MultiCompany Aliases) Forward-Port-Of: odoo/enterprise#21479 Forward-Port-Of: odoo/enterprise#21408
Original PR description
…l gateway Purpose of query counter tests is to try to match real life use cases. In mail those generally involve a correctly configured mail gateway. This is why we set those parameters in performance tests, leading to a small increase in some counters. This is done in stable to better see evolution of those counters in various stables. Task-2661036 Prepares Task-36879 (MultiCompany Aliases) Forward-Port-Of: odoo/enterprise#21479 Forward-Port-Of: odoo/enterprise#21408
Wrong field departure_reason was using in the python code of the rule instead of the field departure_reason_id. Merged the 5 year condition if the lower than 5 years as in the law there is no rule for exactly five years employment Current behavior before PR: Unable to execute the rule Desired behavior after PR is merged: rule is executed and returns the correct amount for the EOS benefits Forward-Port-Of: odoo/enterprise#21374
Original PR description
Wrong field departure_reason was using in the python code of the rule instead of the field departure_reason_id. Merged the 5 year condition if the lower than 5 years as in the law there is no rule for exactly five years employment Current behavior before PR: Unable to execute the rule Desired behavior after PR is merged: rule is executed and returns the correct amount for the EOS benefits Forward-Port-Of: odoo/enterprise#21374