summaryrefslogtreecommitdiff
path: root/addons/product
AgeCommit message (Collapse)Author
2021-05-30[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-05-23[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-05-16[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-05-12[FIX] product: correctly consider context key for display_nameRomain Derie
Regarding of the `display_default_code` context value, `display_name` is supposed to return the product code or not, eg: > product.display_name > '[FURN_6666] Acoustic Bloc Screens' > product.with_context(display_default_code=False).display_name > 'Acoustic Bloc Screens' But since the context was not considered when accessing this field, it would always return the cached value, which was set from the first time that field was read, with the `display_default_code` value used at that time. tl;dr: `display_name` was ignoring the context once cached. One of the critical issue was that internal code were displayed on the eshop cart (not the eshop itself), see `name_short`. task-2517830 closes odoo/odoo#70727 X-original-commit: b5b4d38adf1f3960cda21b795a26e67b978b2901 Signed-off-by: Raphael Collet (rco) <rco@openerp.com> Signed-off-by: Romain Derie <rdeodoo@users.noreply.github.com>
2021-05-09[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-05-06[FIX] product: `_prepare_seller` reuse the orm cacheRémy Voet (ryv)
Make `seller_ids` `depends_context` of company to avoid shared cache with different company. The purpose is to avoid making a SQL search for each `_prepare_seller` and use the ORM cache (which depends of the company in env). Also change the `_order` of `product.supplierinfo` to be determinist and consistent with the `_prepare_seller`. task-2439019
2021-05-02[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-04-25[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-04-18[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-04-11[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-04-04[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-03-28[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-03-21[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-03-18[FIX] product: avoid traceback when accessing a product.product recordAndrea Grazioso (agr-odoo)
This reverts commit ed17f560fa06e2d1c9e7495c9a4cbfe1cea5bce6 which introduced a check not needed anymore as the field measure_type does not exist any more since: https://github.com/odoo/odoo/commit/52ed0be17e80aa6bcc24d59620dd3462b6d577c3 opw-2482554 closes odoo/odoo#68054 Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
2021-03-14[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-03-07[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-02-28[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-02-21[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-02-16[FIX] product: generate variant combinations fasterAdrien Horgnies
The function `_get_possible_combinations` generates possibles combinations for the product template attribute values (ptav) of each product template attribute line (ptal) of a given product template. It used to iterate over them using a cartesian product. A combination can be invalid if it contains two incompatibles ptav. The problem is that it used to filter out invalid combinations after generating them. It's a problem because there can be a lot of invalid combinations to filter out before finding a valid combination. Even before the first valid combination if the first ptav of the two first ptal are incompatible. The solution brought by this commit is to reject the invalid combinations while building them rather than after. It does so by using a cartesian product implementation with early rejection. The algorithm tests each ptav when incorporating it in a partial combination and if it's incompatible, it goes to the next partial combination and thus skips all combinations starting with the invalid partial combination. The client that reported the issue has a product template with about 25 ptal with an average of 9 ptav. The ptav of the first ptal was incompatible with the first ptav of second ptal. It had to build and filter out 5.76*10^15 ptav before finding the first valid ptav. If we generate 10^6 ptav by second (it's much less) user would get first ptav after 182 years. Now it's instantaneous. opw-2335936 closes odoo/odoo#65794 X-original-commit: 98616c4676aa6ef5507110c0e407a640082abbaf Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2021-02-14[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-02-07[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-01-31[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-01-25[FIX] product, sale, stock: speed up discarding product variantsIvan Yelizariev
Modifying product attributes involves discarding product variants via the method _unlink_or_archive(), which tries to delete variants, and archive the ones for which the deletion fails. This process is very slow when most product variants must be archived. Instead, we filter out the variants that must be archived anyway (like the ones used in sales or stock), in order to avoid the variants that cannot be deleted. On a product with ~200 variants, the time goes from more than 15 minutes (the request times out) to around 5 seconds! opw-2440417 closes odoo/odoo#65024 X-original-commit: 63b2f85079404eafac918a74c95e27051539c133 Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2021-01-24[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-01-17[I18N] Update translation terms from TransifexOdoo Translation Bot
2021-01-10[I18N] Update translation terms from TransifexOdoo Translation Bot
2020-12-21[IMP] sale_timesheet: remove internal reference from services demo dataLaurent Stukkens (LTU)
task-2409761
2020-11-27[FIX] *: rephrase, correct typosMartin Trigaux
Courtesy of Transifex's translators for reporting bad/unclear sentences. closes odoo/odoo#62539 Related: odoo/enterprise#15032 Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-11-17[FIX] product, decimal_precision, stock, mrp: Prevent quant reservation issueFanny He
One can set a Unit of Measure precision rounding more precise than the overall Decimal Accuracy. This can trigger the error 'It is not possible to unreserve more products', as there will be inconsistencies on reserved quantities due to decimal roundings. We add 2 warnings on Units of Measure and Decimal Accuracy. Therefore, users are warned when their UOM/decimal changes can cause inconsistencies in quants reservation. Also, we want to prevent the issue at the root by ensuring that both the move and the quant have the same reserved quantity. The contrary can happen e.g. when a product is defined in Liters (rounding .001) but used in an operation in ml (rounding .01, so e.g. 187.5ml). The conversions between the 2 UOM can cause the differences of reservations. In _prepare_move_line_vals we make sure uom_quantity_back_to_product_uom is not more precise than the overall Decimal Accuracy. That way, if the reserved quantity changes between UOM conversions, the move line created is in the quant/product UOM, and we do not have move line's reserved quantity > quantity in stock. We do the same for _update_reserved_quantity (stock.move), when updating a move line. In _update_move_lines, because of UOM conversions, new_quantity_done can differ from ml.product_uom_qty, which triggers the creation of an extra move line, leading to reserved quantity > quantity in stock. To prevent that, we compare the reserved quantities in the product UOM. opw 2206902 (Example 1) opw 2171541 opw 2221227 opw 2233937 opw 2198775 and many more closes odoo/odoo#61758 X-original-commit: 91318520314632655127142de674156802214a21 Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2020-11-22[I18N] Update translation terms from TransifexOdoo Translation Bot
2020-11-17[FIX] product: Change public pricelist currency when changing main currencyAchraf (abz)
What are the steps to reproduce your issue ? 1. Go to 'odoo.com/trial' and create a database with 'account' or 1. Start local server with a new database and with '--without-demo=all --init=account' 2. Change main currency from 'EUR' to 'USD' in settings What is currently happening? Error raised when trying to install 'point_of_sale' What are you expecting to happen? Install 'point_of_sale' normally even after changing main currency Why is this happening? But there is a condition which verifies that there is not already a pricelist with the currency we want to set or with the currency of the company. Otherwise it prevents the pricelist modification How to fix the bug ? Change the condition so that it allows the change of the pricelist in the case where the currency we want to set is not the same as the currency of the company opw-2376457 closes odoo/odoo#61843 X-original-commit: 716e0e791da1e4647dab29959b7012e366aa7b1f Signed-off-by: Achraf <abz-odoo@users.noreply.github.com>
2020-11-15[I18N] Update translation terms from TransifexOdoo Translation Bot
2020-11-08[I18N] Update translation terms from TransifexOdoo Translation Bot
2020-11-02[FIX] product: remove unused confusing variablenans
This variable has been unused since commit f3d6a54e36a. opw 2368733 closes odoo/odoo#61137 X-original-commit: 563253a8303723e3eb4217005bf518fdf6b3f9e3 Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-11-02[IMP] product: extract pricelist item price computation into its modelnans
The pricelist item model (product.pricelist.item) has a compute_price field, and the necessary fields to be able to compute the price of a product. However, these fields are never used into the model itself; the parent model (product.pricelist) actually makes the computation, embedded into _compute_price_rule. Because of this, it's not possible to inherit pricelist items. It's also a better design, on object principles. Last, it lighten a method that is still 130+ lines long. opw 2368733 X-original-commit: 9cd0bf740706a64e49599111304a6fb5ec6d7287
2020-10-29[FIX] *: correct typos and bad EnglishMartin Trigaux
Courtesy of translators Reexport .pot of modified modules closes odoo/odoo#61002 Related: odoo/enterprise#14485 Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-10-27[I18N] *: Update translation terms from TransifexMartin Trigaux
Except Spanish, waiting for cleanup closes odoo/odoo#60848 Related: odoo/enterprise#14421 Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-10-23[FIX] product: archiving last variant must archive product templateNicolas Galler
Behavior prior to this fix: When archiving the last variant on a template, the product template stays active (contrary to the comment indicating that `toggle_active` will archive the related product.template if there is only one active `product.product`). Behavior after the fix: When archiving the last variant on a template, the product template is archived. When un-archiving that variant, the product template is unarchived as well, without un-archiving the other variants. Note: this is a remake of a fix implemented in 77e5472c041e, as that fix did not correctly count the inactive variants. opw-2349862 closes odoo/odoo#60635 X-original-commit: 01160ee5e7f726f3035c566a13e26825236dedfd Signed-off-by: Nicolas Galler <nicocrm@users.noreply.github.com>
2020-10-21[REV] *: revert fb7407c for spanish translationsOlivier Dony
There was a problem in the Transifex translations for Spanish and all translations were overwritten by mistake with english defaults. This commit reverts all modified es.po files to their previous version while we work to restore the translations on Transifex.
2020-10-18[I18N] Update translation terms from TransifexOdoo Translation Bot
2020-10-11[I18N] Update translation terms from TransifexOdoo Translation Bot
2020-10-05[FIX] product: missing supplierinfo fields on viewArnold Moyaux
commit ca3e898481f4091c420a8e9ed498624a591303e9 introduce an editable view for vendor pricelist on product variant and template. However this view is missing product_name and product_code that are editable field in the form view. This commit readd them. Fix #59099 closes odoo/odoo#59104 Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
2020-10-05[I18N] Update translation terms from TransifexOdoo Translation Bot
2020-09-29[I18N] *: export 14.0 source termsMartin Trigaux
Including demo data this time closes odoo/odoo#58821 Related: odoo/enterprise#13682 Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-09-27[I18N] Update translation terms from TransifexOdoo Translation Bot
2020-09-09[IMP] stock,mrp,product,pruchase,repair: improve empty screenyhu-odoo
Improve empty screen, add sample data. Task 2310494 PR #55910
2020-09-07[IMP] uom: change default rounding to twoyhu-odoo
Change the default rouning digits of all UoMs to be two, also change the decimal.precision of UoM to be two. Adapt all the tests. Also to avoid hardcoded digits in `should_consume_qty` widget. PR #56000
2020-09-01[I18N] export saas-13.5 source termsMartin Trigaux
Without demo data closes odoo/odoo#56839 Related: odoo/enterprise#12821 Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-08-20[FIX] product: wrong precision display for standard_priceGoffin Simon
Steps to reproduce: - Install MRP and Inventory - In Settings > Decimal accuracy, change the number of digits of Product Price to 6 - Go to a product template PT Bug: The field standard_price was displayed with two digits instead of 6 opw:2241369 closes odoo/odoo#56235 X-original-commit: cddd79b3dce31108315a7a4c6157c49fc5e97639 Signed-off-by: Simon Goffin (sig) <sig@openerp.com> Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
2020-08-18[REF] core: _name_search() now returns a list of idsRaphael Collet
This provides a better API to search for records by name without the formatting part (`display_name`). This also simplifies all the overridings of `_name_search` that no longer need to call `name_get()`. The call to `name_get()` is done in method `name_search` in a generic way.