diff --git a/product_customerinfo/README.rst b/product_customerinfo/README.rst new file mode 100644 index 00000000000..e814991ffe5 --- /dev/null +++ b/product_customerinfo/README.rst @@ -0,0 +1,139 @@ +.. image:: https://odoo-community.org/readme-banner-image + :target: https://odoo-community.org/get-involved?utm_source=readme + :alt: Odoo Community Association + +================================== +Product Supplierinfo for Customers +================================== + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:aad262a0eaa80bca01b2f21e35b9ce969972ba624af80d62ac787e0a45e75525 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png + :target: https://odoo-community.org/page/development-status + :alt: Production/Stable +.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fproduct--attribute-lightgray.png?logo=github + :target: https://github.com/OCA/product-attribute/tree/19.0/product_customerinfo + :alt: OCA/product-attribute +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/product-attribute-19-0/product-attribute-19-0-product_customerinfo + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/product-attribute&target_branch=19.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module allows you to define a customer-specific product data +structure (patterned after the standard supplier/vendor info) on the +product form. + +This structure enables defining customized information for each customer +and product, including: + +:: + + - Custom Price (Price-list price) + - Customer Product Name + - Customer Product Code + - Minimum Order Quantity (MOQ) + +**Table of contents** + +.. contents:: + :local: + +Configuration +============= + +For these prices to be used in sale prices calculations, you will have +to create a pricelist with a rule with option "Based on" with the value +"Partner Prices: Take the price from the customer info on the 'product +form')". + +Usage +===== + +There's a new section on *Sales* tab of the product form called +"Customers", where you can define records for customers with the same +structure of the suppliers. + +There's a new option on pricelist items that allows to get the prices +from the supplierinfo at the product form. + +Known issues / Roadmap +====================== + +- Product prices through this method are only guaranteed on the standard + sale order workflow. Other custom flows maybe don't reflect the price. +- The minimum quantity will neither apply on sale orders. + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +------- + +* AvanzOSC +* Tecnativa + +Contributors +------------ + +- Oihane Crucelaegui +- Aaron Henriquez +- Miquel Raïch +- `Tecnativa `__: + + - Pedro M. Baeza + - Sergio Teruel + - Carlos Lopez + +- `Komit `__: + + - Vang Nguyen Phu + +- Maksym Yankin + +Maintainers +----------- + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +.. |maintainer-luisg123v| image:: https://github.com/luisg123v.png?size=40px + :target: https://github.com/luisg123v + :alt: luisg123v + +Current `maintainer `__: + +|maintainer-luisg123v| + +This module is part of the `OCA/product-attribute `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_customerinfo/__init__.py b/product_customerinfo/__init__.py new file mode 100644 index 00000000000..0650744f6bc --- /dev/null +++ b/product_customerinfo/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/product_customerinfo/__manifest__.py b/product_customerinfo/__manifest__.py new file mode 100644 index 00000000000..ceb32c5b7e1 --- /dev/null +++ b/product_customerinfo/__manifest__.py @@ -0,0 +1,23 @@ +# Copyright 2015 OdooMRP team +# Copyright 2015 AvanzOSC +# Copyright 2015-18 Tecnativa +# Copyright 2017-18 ForgeFlow +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +{ + "name": "Product Supplierinfo for Customers", + "summary": "Allows to define prices for customers in the products", + "version": "19.0.1.0.0", + "development_status": "Production/Stable", + "author": "AvanzOSC, Tecnativa, Odoo Community Association (OCA)", + "website": "https://github.com/OCA/product-attribute", + "category": "Sales Management", + "license": "AGPL-3", + "maintainers": ["luisg123v"], + "depends": ["product"], + "data": [ + "security/ir.model.access.csv", + "views/product_views.xml", + ], + "demo": ["demo/product_demo.xml"], + "installable": True, +} diff --git a/product_customerinfo/demo/product_demo.xml b/product_customerinfo/demo/product_demo.xml new file mode 100644 index 00000000000..af73f9d7e03 --- /dev/null +++ b/product_customerinfo/demo/product_demo.xml @@ -0,0 +1,13 @@ + + + + + + 1 + 1 + + diff --git a/product_customerinfo/i18n/ca.po b/product_customerinfo/i18n/ca.po new file mode 100644 index 00000000000..503e65fa063 --- /dev/null +++ b/product_customerinfo/i18n/ca.po @@ -0,0 +1,384 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_supplierinfo_for_customer +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 13.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2022-03-21 14:17+0000\n" +"Last-Translator: Noel estudillo \n" +"Language-Team: none\n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.3.2\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "Assigna la prioritat a la llista de proveïdors de productes." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "Basat en" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "Companyia" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "Contacte" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "Creat per" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "Creat el" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "Moneda" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "Client" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "Tarifa de client" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "Codi de producte del client" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "Nom del producte del client" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "Client d’aquest producte" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "Clients" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "Termini de lliurament" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "Nom visible" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "Data final" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "ID" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" +"Si no s’estableix, el preu del venedor s’aplicarà a totes les variants " +"d’aquest producte." + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "Importa plantilla per a llistes de preus de clients" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "Darrera actualització per" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "Darrera actualització el" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" +"Termini de lliurament en dies entre la confirmació de la comanda de compra i " +"la recepció dels productes al vostre magatzem. Utilitzat pel planificador " +"per al càlcul automàtic de la planificació de la comanda de compra." + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "Altra informació" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "Preus per a socis al formulari de producte" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Price" +msgstr "Preu" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Price List" +msgstr "Llista de preu" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "Regla de tarifa" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Product" +msgstr "Producte" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "Plantilla de producte" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "Variant de producte" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "Quantitat" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "Seqüència" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "Data d'inici" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "Llista de preus del proveïdor" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"El codi del producte d’aquest proveïdor s’utilitzarà en imprimir una " +"sol·licitud de pressupost. Mantingueu-lo buit per utilitzar l'intern." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"El nom del producte d’aquest venedor s’utilitzarà en imprimir una " +"sol·licitud de pressupost. Mantingueu-lo buit per utilitzar l'intern." + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "Unitat de mesura" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "Validesa" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "Recompte de variants" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "Client variant" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "a" + +#~ msgid "End date for this vendor price" +#~ msgstr "Data de finalització d’aquest preu de venda" + +#~ msgid "Start date for this vendor price" +#~ msgstr "Data d'inici d'aquest preu de venda" + +#~ msgid "The price to purchase a product" +#~ msgstr "El preu per comprar un producte" + +#~ msgid "" +#~ "The quantity to purchase from this vendor to benefit from the price, " +#~ "expressed in the vendor Product Unit of Measure if not any, in the " +#~ "default unit of measure of the product otherwise." +#~ msgstr "" +#~ "La quantitat que s'ha de comprar a aquest proveïdor per beneficiar-se del " +#~ "preu, expressada en la unitat de mesura del producte del proveïdor, si " +#~ "no, a la unitat de mesura per defecte del producte." + +#~ msgid "Customer Information" +#~ msgstr "Informació de client" + +#~ msgid "Margin to apply on price to obtain sale price" +#~ msgstr "Marge a aplicar al preu per obtenir el preu de venda" + +#~ msgid "Sale Margin" +#~ msgstr "Marge de venda" + +#~ msgid "Vendor Product Code" +#~ msgstr "Codi de producte del proveïdor" + +#~ msgid "Vendor Product Name" +#~ msgstr "Nom del producte del proveïdor" + +#~ msgid "" +#~ "Base price for computation.\n" +#~ "Sales Price: The base price will be the Sales Price.\n" +#~ "Cost Price : The base price will be the cost price.\n" +#~ "Other Pricelist : Computation of the base price based on another " +#~ "Pricelist." +#~ msgstr "" +#~ "Preu base de càlcul.\n" +#~ "Preu de venda: el preu base serà el preu de venda.\n" +#~ "Preu de cost: el preu base serà el preu de cost.\n" +#~ "Una altra llista de preus: càlcul del preu base basat en una altra llista " +#~ "de preus." + +#~ msgid "Last Modified on" +#~ msgstr "Darrera modificació el" + +#~ msgid "This comes from the product form." +#~ msgstr "Això prové de la forma del producte." diff --git a/product_customerinfo/i18n/de.po b/product_customerinfo/i18n/de.po new file mode 100644 index 00000000000..de2653a091c --- /dev/null +++ b/product_customerinfo/i18n/de.po @@ -0,0 +1,394 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_supplierinfo_for_customer +# +# Translators: +# OCA Transbot , 2016 +# Rudolf Schnapka , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-04-21 02:49+0000\n" +"PO-Revision-Date: 2017-04-21 02:49+0000\n" +"Last-Translator: Rudolf Schnapka , 2017\n" +"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "Kunde" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +#, fuzzy +msgid "Customer Pricelist" +msgstr "Artikelnummer des Partners" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +#, fuzzy +msgid "Customer Product Code" +msgstr "Artikelnummer des Partners" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +#, fuzzy +msgid "Customer Product Name" +msgstr "Produktbezeichnung des Partners" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +#, fuzzy +msgid "Customer of this product" +msgstr "Artikelnummer des Partners" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "Kunden" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "Gruppiere nach" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +#, fuzzy +msgid "Price" +msgstr "Preisliste" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#, fuzzy +msgid "Price List" +msgstr "Preisliste" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +#, fuzzy +msgid "Pricelist Rule" +msgstr "Preisliste" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +#, fuzzy +msgid "Product" +msgstr "Produktvorlage" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "Produktvorlage" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +#, fuzzy +msgid "Product Variant" +msgstr "Produktvorlage" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +#, fuzzy +msgid "Supplier Pricelist" +msgstr "Preisliste" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +#, fuzzy +msgid "Unit of Measure" +msgstr "Mengeneinheit des Partners" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +#, fuzzy +msgid "Variant Customer" +msgstr "Kunde" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "" + +#, fuzzy +#~ msgid "Vendor Product Code" +#~ msgstr "Artikelnummer des Partners" + +#, fuzzy +#~ msgid "Vendor Product Name" +#~ msgstr "Produktbezeichnung des Partners" + +#, fuzzy +#~ msgid "Other Pricelist" +#~ msgstr "Preisliste" + +#, fuzzy +#~ msgid "Information about a product vendor" +#~ msgstr "Information zu Produktlieferant" + +#~ msgid "Supplier" +#~ msgstr "Lieferant" + +#~ msgid "Type" +#~ msgstr "Art" + +#~ msgid "" +#~ "

\n" +#~ " Click to define a new product.supplierinfo.\n" +#~ "

\n" +#~ " " +#~ msgstr "" +#~ "

\n" +#~ " Klicken für neue product.supplierinfo " +#~ "Lieferanteninfo.\n" +#~ "

\n" +#~ " " + +#~ msgid "Information about a product (customer)" +#~ msgstr "Information zu einem (Kunden-) Produkt" + +#~ msgid "Partner" +#~ msgstr "Partner" + +#~ msgid "Supplierinfo search" +#~ msgstr "Lieferantenauskunft-Suche" + +#~ msgid "[('type','=','supplier')]" +#~ msgstr "[('type','=','supplier')]" + +#~ msgid "" +#~ "{'default_search_type':'supplier','default_type':'supplier','default_product_tmpl_id':" +#~ "id}" +#~ msgstr "" +#~ "{'default_search_type':'supplier','default_type':'supplier','default_product_tmpl_id':" +#~ "id}" + +#~ msgid "{'select_type': type}" +#~ msgstr "{'select_type': type}" diff --git a/product_customerinfo/i18n/es.po b/product_customerinfo/i18n/es.po new file mode 100644 index 00000000000..7855f486a97 --- /dev/null +++ b/product_customerinfo/i18n/es.po @@ -0,0 +1,423 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_supplierinfo_for_customer +# +# Translators: +# OCA Transbot , 2016 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-11-03 10:07+0000\n" +"PO-Revision-Date: 2023-11-18 17:35+0000\n" +"Last-Translator: Ivorra78 \n" +"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "Activo" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "Asigna la prioridad a la lista de productos de proveedor." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "Basado en" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "Compañia" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "Contacto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "Creado el" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "Moneda" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "Cliente" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "Tarifa de cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "Código de producto para la empresa" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "Nombre Producto Cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "Cliente de este producto" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "Clientes" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "Tiempo inicial entrega" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "Nombre a mostrar" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "Fecha final" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "Agrupar por" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "ID (identificación)" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" +"Si no se fija, el precio de proveedor se aplicará a todas las variantes de " +"este producto." + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "Importar plantilla para tarifas de clientes" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "Última Compra" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "Última actualización por" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "Última actualización el" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" +"Tiempo de espera en días entre la confirmación del pedido de compra y la " +"recepción de los productos en su almacén. Usado por el planificador para el " +"cálculo automático de la planificación de pedidos de compra." + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "Otra información" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "Precios de cliente en el formulario del producto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Price" +msgstr "Precio" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Price List" +msgstr "Tarifa" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "Elemento de tarifa" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Product" +msgstr "Producto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "Plantilla de producto" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "Variante de producto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "Cantidad" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "Secuencia" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "Mostrar Botón Establecer Proveedor" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "Fecha inicial" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "Tarifa de proveedor" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"El código de producto de proveedor se usará al imprimir una solicitud de " +"presupuesto. Déjelo vacío para usar el código interno." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"El nombre de producto del proveedor se usará al imprimir una solicitud de " +"presupuesto. Déjelo vacío para usar el nombre interno." + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "Unidad de medida" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "Validez" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "Contador de variantes" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "Variante de cliente" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "para" + +#~ msgid "" +#~ "Default unit of measure used for purchase orders. It must be in the same " +#~ "category as the default unit of measure." +#~ msgstr "" +#~ "Unidad de medida por defecto utilizada para los pedidos de compra. Debe " +#~ "pertenecer a la misma categoría que la unidad de medida por defecto." + +#~ msgid "End date for this vendor price" +#~ msgstr "Fecha final para este precio de proveedor" + +#~ msgid "Start date for this vendor price" +#~ msgstr "Fecha inicial para este precio de proveedor" + +#~ msgid "The price to purchase a product" +#~ msgstr "El precio al que se compra un producto" + +#~ msgid "" +#~ "The quantity to purchase from this vendor to benefit from the price, " +#~ "expressed in the vendor Product Unit of Measure if not any, in the " +#~ "default unit of measure of the product otherwise." +#~ msgstr "" +#~ "Cantidad mínima a comprar de este proveedor, expresada en la unidad de " +#~ "producto del proveedor si existe o, en otro caso, en la unidad de medida " +#~ "por defecto del producto." + +#~ msgid "Customer Information" +#~ msgstr "Información de Cliente" + +#~ msgid "Margin to apply on price to obtain sale price" +#~ msgstr "Margen a aplicar sobre el precio para obtener precio de venta" + +#~ msgid "Sale Margin" +#~ msgstr "Margen de venta" + +#~ msgid "Vendor Product Code" +#~ msgstr "Código de producto del proveedor" + +#~ msgid "Vendor Product Name" +#~ msgstr "Nombre del producto del proveedor" + +#~ msgid "" +#~ "Base price for computation.\n" +#~ "Sales Price: The base price will be the Sales Price.\n" +#~ "Cost Price : The base price will be the cost price.\n" +#~ "Other Pricelist : Computation of the base price based on another " +#~ "Pricelist." +#~ msgstr "" +#~ "Precio base para el cálculo.\n" +#~ "Precio venta: El precio base será el precio de venta.\n" +#~ "Precio de coste: El precio base será el precio de coste.\n" +#~ "Otras tarifas: Cálculo del precio base basado en otra lista de precios." + +#~ msgid "Last Modified on" +#~ msgstr "Última modificación el" + +#~ msgid "This comes from the product form." +#~ msgstr "Esto proviene del formulario del producto." + +#, fuzzy +#~| msgid "Price List" +#~ msgid "Other Pricelist" +#~ msgstr "Lista de Precios" + +#~ msgid "Information about a product vendor" +#~ msgstr "Información sobre proveedor" + +#~ msgid "Supplier" +#~ msgstr "Proveedor" + +#~ msgid "Type" +#~ msgstr "Tipo" + +#~ msgid "" +#~ "

\n" +#~ " Click to define a new product.supplierinfo.\n" +#~ "

\n" +#~ " " +#~ msgstr "" +#~ "

\n" +#~ "Pulse para definir una nueva definición de producto-empresa.\n" +#~ "

\n" + +#~ msgid "Partner" +#~ msgstr "Empresa" + +#~ msgid "Supplierinfo search" +#~ msgstr "Búsqueda de producto-empresa" diff --git a/product_customerinfo/i18n/fr.po b/product_customerinfo/i18n/fr.po new file mode 100644 index 00000000000..4a49f527ba8 --- /dev/null +++ b/product_customerinfo/i18n/fr.po @@ -0,0 +1,407 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_supplierinfo_for_customer +# +# Translators: +# OCA Transbot , 2016 +# Christophe CHAUVET , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-04-21 02:49+0000\n" +"PO-Revision-Date: 2023-10-09 02:46+0000\n" +"Last-Translator: sofien-moalla \n" +"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n > 1;\n" +"X-Generator: Weblate 4.17\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "Actif" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "Attribue la priorité à la liste des fournisseurs de produits." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "Basé sur" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "Société" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "Contact" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "Créé par" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "Créé le" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "Devise" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "Client" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "Liste de prix client" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "Code produit client" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "Nom du produit client" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "Client de ce produit" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "Clients" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "Délai de livraison" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "Nom affiché" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "Date de fin" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "ID" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" +"S'il n'est pas défini, le prix fournisseur s'appliquera à toutes les " +"variantes de ce produit." + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "Modèle d'importation pour les listes de prix des clients" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "Dernière mise à jour par" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "Dernière mise à jour le" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" +"Délai en jours entre la confirmation de la commande et la réception des " +"produits dans votre entrepôt. Utilisé par l'ordonnanceur pour le calcul " +"automatique de la planification des commandes." + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "Autres informations" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "Prix du partenaire sur la fiche produit" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Price" +msgstr "Prix" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#, fuzzy +msgid "Price List" +msgstr "Liste de prix" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "Règle de la liste de prix" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Product" +msgstr "Produit" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "Modèle de produit" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "Variante de produit" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "Quantité" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "Séquence" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "Date de début" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "Liste de prix fournisseur" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"Le code produit de ce fournisseur sera utilisé lors de l'impression d'une " +"demande de devis. Laisser vide pour utiliser le code interne." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"Le nom du produit de ce fournisseur sera utilisé lors de l'impression d'une " +"demande de devis. Laisser vide pour utiliser le nom interne." + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "Unité de mesure" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "Validité" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "Nombre de variantes" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "Variante Client" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "à" + +#~ msgid "" +#~ "Default unit of measure used for purchase orders. It must be in the same " +#~ "category as the default unit of measure." +#~ msgstr "" +#~ "Unité de mesure par défaut utilisée pour les commandes. Elle doit " +#~ "appartenir à la même catégorie que l'unité de mesure par défaut." + +#~ msgid "End date for this vendor price" +#~ msgstr "Date de fin pour ce prix fournisseur" + +#~ msgid "Start date for this vendor price" +#~ msgstr "Date de début pour ce prix fournisseur" + +#~ msgid "The price to purchase a product" +#~ msgstr "Le prix d'achat d'un produit" + +#~ msgid "" +#~ "The quantity to purchase from this vendor to benefit from the price, " +#~ "expressed in the vendor Product Unit of Measure if not any, in the " +#~ "default unit of measure of the product otherwise." +#~ msgstr "" +#~ "La quantité à acheter à ce vendeur pour bénéficier du prix, exprimée dans " +#~ "l'unité de mesure du produit du vendeur s'il n'y en a pas, dans l'unité " +#~ "de mesure par défaut du produit dans le cas contraire." + +#~ msgid "Customer Information" +#~ msgstr "Informations du client" + +#~ msgid "Margin to apply on price to obtain sale price" +#~ msgstr "Marge à appliquer sur le prix pour obtenir le prix de vente" + +#~ msgid "Sale Margin" +#~ msgstr "Marge de vente" + +#~ msgid "Vendor Product Code" +#~ msgstr "Code produit du vendeur" + +#~ msgid "Vendor Product Name" +#~ msgstr "Nom du produit du vendeur" + +#~ msgid "" +#~ "Base price for computation.\n" +#~ "Sales Price: The base price will be the Sales Price.\n" +#~ "Cost Price : The base price will be the cost price.\n" +#~ "Other Pricelist : Computation of the base price based on another " +#~ "Pricelist." +#~ msgstr "" +#~ "Prix de base pour le calcul.\n" +#~ "Prix de vente : Le prix de base sera le prix de vente.\n" +#~ "Prix de revient : Le prix de base sera le prix de revient.\n" +#~ "Autre liste de prix : Calcul du prix de base sur la base d'une autre " +#~ "liste de prix." + +#~ msgid "Last Modified on" +#~ msgstr "Dernière modification le" + +#, fuzzy +#~ msgid "Other Pricelist" +#~ msgstr "Liste de prix" + +#, fuzzy +#~ msgid "Information about a product vendor" +#~ msgstr "Information à propos du fournisseur du produit" + +#~ msgid "Type" +#~ msgstr "Type" + +#~ msgid "Partner" +#~ msgstr "Partenaire" diff --git a/product_customerinfo/i18n/it.po b/product_customerinfo/i18n/it.po new file mode 100644 index 00000000000..9914637b367 --- /dev/null +++ b/product_customerinfo/i18n/it.po @@ -0,0 +1,396 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_supplierinfo_for_customer +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2025-10-30 11:42+0000\n" +"Last-Translator: mymage \n" +"Language-Team: none\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.10.4\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "Attiva" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "Prodotti attivi" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "In archivio" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "Assegna la priorità all'elenco fornitori del prodotto." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" +"Prezzo base per il calcolo.\n" +"Prezzo di vendita: il prezzo base sarà il prezzo di vendita.\n" +"Prezzo di costo: il prezzo base sarà il prezzo di costo.\n" +"Altri listini prezzi: il calcolo del prezzo base sarà basato su un altro " +"listino prezzi." + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "Basato su" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "Azienda" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "Contatto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "Creato da" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "Creato il" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "Valuta" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "Cliente" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "Listino prezzi cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "Codice prodotto cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "Nome prodotto cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "Cliente di questo prodotto" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "Unità di misura specifica per utente." + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "Clienti" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "Tempo di esecuzione spedizione" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "Sconto (%)" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "Prezzo scontato" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "Nome visualizzato" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "Data fine" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "Data fine per questo prezzo cliente" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "Raggruppa per" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "ID" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" +"Se non è impostato, il prezzo fornitore si applicherà a tutte le varianti di " +"questo prodotto." + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "Modello importazione listino clienti" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "Ultimo acquisto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "Ultimo aggiornamento di" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "Ultimo aggiornamento il" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" +"Tempo di risposta, in giorni, tra la conferma dell'ordine di acquisto e la " +"ricezione dei prodotti in magazzino. Utilizzato dal pianificatore per il " +"calcolo automatico della programmazione degli ordini di acquisto." + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "Altre informazioni" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "Prezzi del partner nella scheda prodotto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Price" +msgstr "Prezzo" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Price List" +msgstr "Listino prezzi" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "Prezzo a cui questo prodotto è venduto a questo cliente." + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "Regola listino prezzi" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Product" +msgstr "Prodotto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "Modello prodotto" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "Variante prodotto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "Quantità" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "Sequenza" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "Visualizza pulsante imposta fornitore" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "Data inizio" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "Data inizio per questo prezzo cliente" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "Listino prezzi fornitore" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" +"Quantità minima da acquistare affinché questo cliente possa beneficiare del " +"prezzo. Espressa nell'unità di misura del prodotto del cliente, se " +"impostata, altrimenti nell'unità di misura del prodotto predefinita." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"Il codice prodotto di questo venditore sarà usato quando verrà stampata una " +"richiesta di preventivo. Lasciare vuoto per usarne uno interno." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"Il nome prodotto di questo fornitore sarà usato quando verrà stampata una " +"richiesta di preventivo. Lasciare vuoto per usarne uno interno." + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "Unità di misura" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "Validità" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "Conteggio varianti" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "Variante cliente" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "a" + +#~ msgid "" +#~ "Default unit of measure used for purchase orders. It must be in the same " +#~ "category as the default unit of measure." +#~ msgstr "" +#~ "Unità di misura predefinita utilizzata per ordini di acquisto. Deve " +#~ "essere della stessa categoria dell'unità di misura predefinita." + +#~ msgid "End date for this vendor price" +#~ msgstr "Data di fine per questo prezzo fornitore" + +#~ msgid "Start date for this vendor price" +#~ msgstr "Data di inizio per il prezzo di questo fornitore" + +#~ msgid "The price to purchase a product" +#~ msgstr "Prezzo di acquisto di un prodotto" + +#~ msgid "" +#~ "The quantity to purchase from this vendor to benefit from the price, " +#~ "expressed in the vendor Product Unit of Measure if not any, in the " +#~ "default unit of measure of the product otherwise." +#~ msgstr "" +#~ "La quantità da acquistare da questo fornitore per beneficiare del prezzo, " +#~ "espresso nell'unità di misura del prodotto del fornitore se non presente, " +#~ "altrimenti nell'unità di misura del prodotto." + +#~ msgid "Customer Information" +#~ msgstr "Informazioni cliente" + +#~ msgid "Margin to apply on price to obtain sale price" +#~ msgstr "Margine da applicare per ottenere il prezzo di vendita" + +#~ msgid "Sale Margin" +#~ msgstr "Margine di vendita" + +#~ msgid "Vendor Product Code" +#~ msgstr "Codice prodotto fornitore" + +#~ msgid "Vendor Product Name" +#~ msgstr "Nome prodotto fornitore" + +#~ msgid "" +#~ "Base price for computation.\n" +#~ "Sales Price: The base price will be the Sales Price.\n" +#~ "Cost Price : The base price will be the cost price.\n" +#~ "Other Pricelist : Computation of the base price based on another " +#~ "Pricelist." +#~ msgstr "" +#~ "Prezzo base per il calcolo.\n" +#~ "Prezzo di vendita: il prezzo base sarà il prezzo di vendita.\n" +#~ "Prezzo di costo: il prezzo base sarà il prezzo di costo.\n" +#~ "Altri listini prezzi: il calcolo del prezzo base sarà basato su un altro " +#~ "listino prezzi." + +#~ msgid "Last Modified on" +#~ msgstr "Ultima modifica il" diff --git a/product_customerinfo/i18n/nl.po b/product_customerinfo/i18n/nl.po new file mode 100644 index 00000000000..6df2fc23e15 --- /dev/null +++ b/product_customerinfo/i18n/nl.po @@ -0,0 +1,321 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_customerinfo +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Price List" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Product" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "" diff --git a/product_customerinfo/i18n/nl_NL.po b/product_customerinfo/i18n/nl_NL.po new file mode 100644 index 00000000000..8e03e3b5dac --- /dev/null +++ b/product_customerinfo/i18n/nl_NL.po @@ -0,0 +1,362 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_customerinfo +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2025-09-11 12:38+0000\n" +"Last-Translator: Bosd \n" +"Language-Team: none\n" +"Language: nl_NL\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.10.4\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "Actief" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "Actieve producten" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "Gearchiveerd" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "Kent de prioriteit toe aan de lijst met productleveranciers." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" +"Basisprijs voor berekening.\n" +"Verkoopprijs: De basisprijs is de verkoopprijs.\n" +"Kostprijs: De basisprijs is de kostprijs.\n" +"Andere prijslijst: Berekening van de basisprijs op basis van een andere " +"prijslijst." + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "Gebaseerd op" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "Bedrijf" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "Contact" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "Aangemaakt door" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "Aangemaakt op" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "Valuta" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "Klant" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "Prijslijst van de klant" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "Artikelcode van de klant" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "Naam van het product van de klant" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "Klant van dit product" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "Klanten" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "Levertijd" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "Korting (%)" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "Gekorte prijs" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "Weergavenaam" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "Einddatum" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "Groeperen op" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "ID" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" +"Indien niet ingesteld, is de leveranciersprijs van toepassing op alle " +"varianten van dit product." + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "Sjabloon importeren voor klantenprijslijsten" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "Laatste aankoop" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "Laatst bijgewerkt door" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "Laatst bijgewerkt op" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" +"Doorlooptijd in dagen tussen de bevestiging van de inkooporder en de " +"ontvangst van de producten in uw magazijn. Wordt door de planner gebruikt " +"voor de automatische berekening van de inkooporderplanning." + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "Overige informatie" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "Partnerprijzen op het productformulier" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Price" +msgstr "Prijs" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Price List" +msgstr "Prijslijst" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "Prijslijstregel" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Product" +msgstr "Product" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "Productsjabloon" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "Productvariant" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "Hoeveelheid" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "Volgorde" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "Knop 'Leverancier instellen' tonen" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "Startdatum" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "Leveranciersprijslijst" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"Deze artikelcode van de leverancier zal worden gebruikt bij het afdrukken " +"van een offerteaanvraag. Leeglaten om de interne te gebruiken." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"Deze productnaam van de leverancier zal worden gebruikt bij het afdrukken " +"van een offerteaanvraag. Leeglaten om de interne te gebruiken." + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "Meeteenheid" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "Geldigheid" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "Aantal varianten" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "Variant Klant" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "tot" + +#~ msgid "" +#~ "Default unit of measure used for purchase orders. It must be in the same " +#~ "category as the default unit of measure." +#~ msgstr "" +#~ "Standaard meeteenheid die gebruikt wordt voor aankooporders. Deze moet in " +#~ "dezelfde categorie vallen als de standaard meeteenheid." + +#~ msgid "End date for this vendor price" +#~ msgstr "Einddatum voor deze leveranciersprijs" + +#~ msgid "Start date for this vendor price" +#~ msgstr "Startdatum voor deze leveranciersprijs" + +#~ msgid "The price to purchase a product" +#~ msgstr "De prijs om een product aan te schaffen" + +#~ msgid "" +#~ "The quantity to purchase from this vendor to benefit from the price, " +#~ "expressed in the vendor Product Unit of Measure if not any, in the " +#~ "default unit of measure of the product otherwise." +#~ msgstr "" +#~ "De hoeveelheid om van deze leverancier te kopen om van de prijs te " +#~ "profiteren, uitgedrukt in de meeteenheid van het product van de " +#~ "leverancier, of anders in de standaard meeteenheid van het product." diff --git a/product_customerinfo/i18n/product_customerinfo.pot b/product_customerinfo/i18n/product_customerinfo.pot new file mode 100644 index 00000000000..a2c975e15af --- /dev/null +++ b/product_customerinfo/i18n/product_customerinfo.pot @@ -0,0 +1,320 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_customerinfo +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Price List" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Product" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise" +" in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "" diff --git a/product_customerinfo/i18n/product_supplierinfo_for_customer.pot b/product_customerinfo/i18n/product_supplierinfo_for_customer.pot new file mode 100644 index 00000000000..b95c511f5f6 --- /dev/null +++ b/product_customerinfo/i18n/product_supplierinfo_for_customer.pot @@ -0,0 +1,329 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_supplierinfo_for_customer +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__active +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_search_view +msgid "Active" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_pricelist_item__base +msgid "Based on" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__company_id +msgid "Company" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model,name:product_supplierinfo_for_customer.model_res_partner +msgid "Contact" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__create_date +msgid "Created on" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_tree_view +msgid "Customer" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +msgid "Customer Information" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model,name:product_supplierinfo_for_customer.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_template_form_view +msgid "Customers" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__product_uom +msgid "" +"Default unit of measure used for purchase orders. It must be in the same " +"category as the default unit of measure." +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__date_end +msgid "End Date" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__date_end +msgid "End date for this vendor price" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_search_view +msgid "Group By" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__id +msgid "ID" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" + +#. module: product_supplierinfo_for_customer +#. odoo-python +#: code:addons/product_supplierinfo_for_customer/models/product_customerinfo.py:0 +#, python-format +msgid "Import Template for Customer Pricelists" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__sale_margin +msgid "Margin to apply on price to obtain sale price" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +msgid "Other Information" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields.selection,name:product_supplierinfo_for_customer.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_tree_view +msgid "Price" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +msgid "Price List" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model,name:product_supplierinfo_for_customer.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model,name:product_supplierinfo_for_customer.model_product_template +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_tree_view +msgid "Product" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model,name:product_supplierinfo_for_customer.model_product_product +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__sale_margin +msgid "Sale Margin" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__date_start +msgid "Start date for this vendor price" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model,name:product_supplierinfo_for_customer.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__price +msgid "The price to purchase a product" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__min_qty +msgid "" +"The quantity to purchase from this vendor to benefit from the price, " +"expressed in the vendor Product Unit of Measure if not any, in the default " +"unit of measure of the product otherwise." +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,help:product_supplierinfo_for_customer.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +msgid "Validity" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_supplierinfo_for_customer.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "" + +#. module: product_supplierinfo_for_customer +#: model_terms:ir.ui.view,arch_db:product_supplierinfo_for_customer.product_customerinfo_form_view +msgid "to" +msgstr "" diff --git a/product_customerinfo/i18n/pt_BR.po b/product_customerinfo/i18n/pt_BR.po new file mode 100644 index 00000000000..c3f0b8ec2b2 --- /dev/null +++ b/product_customerinfo/i18n/pt_BR.po @@ -0,0 +1,388 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_supplierinfo_for_customer +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2023-10-09 02:46+0000\n" +"Last-Translator: Adriano Prado \n" +"Language-Team: none\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n > 1;\n" +"X-Generator: Weblate 4.17\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "Ativo" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "Atribui a prioridade à lista de fornecedores do produto." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "Baseado em" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "Empresa" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "Contato" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "Criado por" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "Criado em" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "Moeda" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "Cliente" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +msgid "Customer Pricelist" +msgstr "Lista de Preço do Cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Code" +msgstr "Código Produto no Cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer Product Name" +msgstr "Nome Produto no Cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +msgid "Customer of this product" +msgstr "Cliente deste Produto" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "Clientes" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "Prazo de entrega" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "Nome de exibição" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "Data Final" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "ID" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" +"Se não for definido, o preço do fornecedor será aplicado a todas as " +"variantes deste produto." + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "Modelo de importação para listas de preços do cliente" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "Última Atualização por" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "Última Atualização em" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" +"Prazo de entrega em dias entre a confirmação do pedido de compra e o " +"recebimento dos produtos em seu depósito. Usado pelo agendador para cálculo " +"automático do planejamento da ordem de compra." + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "Outras Informações" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "Preços do parceiro no formulário do produto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Price" +msgstr "Preço" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Price List" +msgstr "Lista de Preços" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +msgid "Pricelist Rule" +msgstr "Regra Lista de Preços" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Product" +msgstr "Produto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "Modelo de produto" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +msgid "Product Variant" +msgstr "Variação Produto" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "Quantidade" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "Sequencia" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "Data Inicio" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +msgid "Supplier Pricelist" +msgstr "Lista Preço Fornecedor" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"O código do produto deste fornecedor será utilizado na impressão de uma " +"solicitação de cotação. Mantenha vazio para usar o interno." + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" +"O nome do produto deste fornecedor será usado ao imprimir uma solicitação de " +"cotação. Mantenha vazio para usar o interno." + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +msgid "Unit of Measure" +msgstr "Unidade de Medida" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "Validade" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "Contagem de variantes" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +msgid "Variant Customer" +msgstr "Variação Cliente" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "para" + +#~ msgid "" +#~ "Default unit of measure used for purchase orders. It must be in the same " +#~ "category as the default unit of measure." +#~ msgstr "" +#~ "Unidade de medida padrão usada para ordens de compra. Ele deve estar na " +#~ "mesma categoria que a unidade de medida padrão." + +#~ msgid "End date for this vendor price" +#~ msgstr "Data final para preço do fornecedor" + +#~ msgid "Start date for this vendor price" +#~ msgstr "Data de início para este preço de fornecedor" + +#~ msgid "The price to purchase a product" +#~ msgstr "O preço para comprar um produto" + +#~ msgid "" +#~ "The quantity to purchase from this vendor to benefit from the price, " +#~ "expressed in the vendor Product Unit of Measure if not any, in the " +#~ "default unit of measure of the product otherwise." +#~ msgstr "" +#~ "A quantidade a comprar deste fornecedor para se beneficiar do preço, " +#~ "expressa na unidade de medida do produto do fornecedor, se não houver, na " +#~ "unidade de medida padrão do produto, caso contrário." + +#~ msgid "Customer Information" +#~ msgstr "Informação do Cliente" + +#~ msgid "Margin to apply on price to obtain sale price" +#~ msgstr "Margem a aplicar sobre o preço para obter o preço de venda" + +#~ msgid "Sale Margin" +#~ msgstr "Margem Venda" + +#~ msgid "Vendor Product Code" +#~ msgstr "Código Produto no Fornecedor" + +#~ msgid "Vendor Product Name" +#~ msgstr "Nome Produto Fornededor" + +#~ msgid "" +#~ "Base price for computation.\n" +#~ "Sales Price: The base price will be the Sales Price.\n" +#~ "Cost Price : The base price will be the cost price.\n" +#~ "Other Pricelist : Computation of the base price based on another " +#~ "Pricelist." +#~ msgstr "" +#~ "Preço base para cálculo.\n" +#~ "Preço de venda: O preço base será o Preço de venda.\n" +#~ "Preço de custo: O preço base será o preço de custo.\n" +#~ "Outra lista de preços : Cálculo do preço base com base em outra lista de " +#~ "preços." + +#~ msgid "Last Modified on" +#~ msgstr "Última Modificação em" diff --git a/product_customerinfo/i18n/sl.po b/product_customerinfo/i18n/sl.po new file mode 100644 index 00000000000..35198727e6b --- /dev/null +++ b/product_customerinfo/i18n/sl.po @@ -0,0 +1,394 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_supplierinfo_for_customer +# +# Translators: +# OCA Transbot , 2016 +# Matjaž Mozetič , 2016 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-11-03 10:07+0000\n" +"PO-Revision-Date: 2016-11-03 10:07+0000\n" +"Last-Translator: Matjaž Mozetič , 2016\n" +"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n" +"Language: sl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || " +"n%100==4 ? 2 : 3);\n" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Active Products" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Archived" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__sequence +msgid "Assigns the priority to the list of product vendor." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_pricelist_item__base +msgid "" +"Base price for computation.\n" +"Sales Price: The base price will be the Sales Price.\n" +"Cost Price: The base price will be the cost price.\n" +"Other Pricelist: Computation of the base price based on another Pricelist." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_pricelist_item__base +msgid "Based on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__company_id +msgid "Company" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_res_partner +msgid "Contact" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_uid +msgid "Created by" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__create_date +msgid "Created on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__currency_id +msgid "Currency" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__partner_id +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__customer_ids +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +msgid "Customer" +msgstr "Kupec" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_customerinfo +#, fuzzy +msgid "Customer Pricelist" +msgstr "Partnerjeva koda proizvoda" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_code +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +#, fuzzy +msgid "Customer Product Code" +msgstr "Partnerjeva koda proizvoda" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_name +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +#, fuzzy +msgid "Customer Product Name" +msgstr "Partnerjev naziv proizvoda" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__partner_id +#, fuzzy +msgid "Customer of this product" +msgstr "Partnerjeva koda proizvoda" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_uom +msgid "Customer specific unit of measure." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_template_form_view +msgid "Customers" +msgstr "Kupci" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__delay +msgid "Delivery Lead Time" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__discount +msgid "Discount (%)" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price_discounted +msgid "Discounted Price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__display_name +msgid "Display Name" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_end +msgid "End Date" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_end +msgid "End date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +msgid "Group By" +msgstr "Združi po" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__id +msgid "ID" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_id +msgid "" +"If not set, the vendor price will apply to all variants of this product." +msgstr "" + +#. module: product_customerinfo +#. odoo-python +#: code:addons/product_customerinfo/models/product_customerinfo.py:0 +msgid "Import Template for Customer Pricelists" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__last_purchase_date +msgid "Last Purchase" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__write_date +msgid "Last Updated on" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__delay +msgid "" +"Lead time in days between the confirmation of the purchase order and the " +"receipt of the products in your warehouse. Used by the scheduler for " +"automatic computation of the purchase order planning." +msgstr "" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Other Information" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields.selection,name:product_customerinfo.selection__product_pricelist_item__base__partner +msgid "Partner Prices on the product form" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__price +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +#, fuzzy +msgid "Price" +msgstr "Cenik" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#, fuzzy +msgid "Price List" +msgstr "Cenik" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__price +msgid "Price at which the product is sold to this customer." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_pricelist_item +#, fuzzy +msgid "Pricelist Rule" +msgstr "Cenik" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_template +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_search_view +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_tree_view +#, fuzzy +msgid "Product" +msgstr "Predloga proizvoda" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_tmpl_id +msgid "Product Template" +msgstr "Predloga proizvoda" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_product +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_id +#, fuzzy +msgid "Product Variant" +msgstr "Predloga proizvoda" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__min_qty +msgid "Quantity" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__sequence +msgid "Sequence" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__show_set_supplier_button +msgid "Show Set Supplier Button" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__date_start +msgid "Start Date" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__date_start +msgid "Start date for this customer price" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model,name:product_customerinfo.model_product_supplierinfo +#, fuzzy +msgid "Supplier Pricelist" +msgstr "Cenik" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__min_qty +msgid "" +"The minimum quantity to purchase for this customer to benefit from the " +"price. Expressed in the customer's Product Unit of Measure if set, otherwise " +"in the default Product Unit of Measure." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_code +msgid "" +"This vendor's product code will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,help:product_customerinfo.field_product_customerinfo__product_name +msgid "" +"This vendor's product name will be used when printing a request for " +"quotation. Keep empty to use the internal one." +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_uom +#, fuzzy +msgid "Unit of Measure" +msgstr "Partnerjeva EM" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "Validity" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_customerinfo__product_variant_count +msgid "Variant Count" +msgstr "" + +#. module: product_customerinfo +#: model:ir.model.fields,field_description:product_customerinfo.field_product_product__variant_customer_ids +#: model:ir.model.fields,field_description:product_customerinfo.field_product_template__variant_customer_ids +#, fuzzy +msgid "Variant Customer" +msgstr "Kupec" + +#. module: product_customerinfo +#: model_terms:ir.ui.view,arch_db:product_customerinfo.product_customerinfo_form_view +msgid "to" +msgstr "" + +#, fuzzy +#~ msgid "Vendor Product Code" +#~ msgstr "Partnerjeva koda proizvoda" + +#, fuzzy +#~ msgid "Vendor Product Name" +#~ msgstr "Partnerjev naziv proizvoda" + +#, fuzzy +#~ msgid "Other Pricelist" +#~ msgstr "Cenik" + +#, fuzzy +#~ msgid "Information about a product vendor" +#~ msgstr "Podatki o dobavitelju proizvoda" + +#~ msgid "Supplier" +#~ msgstr "Dobavitelj" + +#~ msgid "Type" +#~ msgstr "Tip" + +#~ msgid "" +#~ "

\n" +#~ " Click to define a new product.supplierinfo.\n" +#~ "

\n" +#~ " " +#~ msgstr "" +#~ "

\n" +#~ " Kliknite za nov product.supplierinfo.\n" +#~ "

\n" +#~ " " + +#~ msgid "Information about a product (customer)" +#~ msgstr "Podatki o proizvodu (kupec)" + +#~ msgid "Partner" +#~ msgstr "Partner" + +#~ msgid "Supplierinfo search" +#~ msgstr "Iskanje podatkov o dobavitelju" + +#~ msgid "[('type','=','supplier')]" +#~ msgstr "[('type','=','supplier')]" + +#~ msgid "" +#~ "{'default_search_type':'supplier','default_type':'supplier','default_product_tmpl_id':" +#~ "id}" +#~ msgstr "" +#~ "{'default_search_type':'supplier','default_type':'supplier','default_product_tmpl_id':" +#~ "id}" + +#~ msgid "{'select_type': type}" +#~ msgstr "{'select_type': type}" diff --git a/product_customerinfo/models/__init__.py b/product_customerinfo/models/__init__.py new file mode 100644 index 00000000000..f232df4ed7c --- /dev/null +++ b/product_customerinfo/models/__init__.py @@ -0,0 +1,6 @@ +from . import product_pricelist_item +from . import product_customerinfo +from . import product_supplierinfo +from . import product_product +from . import product_template +from . import res_partner diff --git a/product_customerinfo/models/product_customerinfo.py b/product_customerinfo/models/product_customerinfo.py new file mode 100644 index 00000000000..6c201af239f --- /dev/null +++ b/product_customerinfo/models/product_customerinfo.py @@ -0,0 +1,51 @@ +# Copyright 2019 Tecnativa - Pedro M. Baeza +# Copyright 2019 ForgeFlow S.L. +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +from odoo import api, fields, models +from odoo.fields import Domain + + +class ProductCustomerInfo(models.Model): + _inherit = "product.supplierinfo" + _name = "product.customerinfo" + _description = "Customer Pricelist" + + partner_id = fields.Many2one(string="Customer", help="Customer of this product") + product_name = fields.Char(string="Customer Product Name") + product_code = fields.Char(string="Customer Product Code") + # Override fields with corrected help texts + min_qty = fields.Float( + help="The minimum quantity to purchase for this customer to benefit from the " + "price. Expressed in the customer's Product Unit of Measure if set, " + "otherwise in the default Product Unit of Measure." + ) + price = fields.Float(help="Price at which the product is sold to this customer.") + date_start = fields.Date(help="Start date for this customer price") + date_end = fields.Date(help="End date for this customer price") + product_uom_id = fields.Many2one(help="Customer specific unit of measure.") + + @api.model + def get_import_templates(self): + return [ + { + "label": self.env._("Import Template for Customer Pricelists"), + "template": "/product_customerinfo/static/xls/product_customerinfo.xls", + } + ] + + @api.model + def _get_name_search_domain(self, partner_id, operator, name): + partner = self.env["res.partner"].browse(partner_id) + root = partner.commercial_partner_id.parent_id or partner.commercial_partner_id + + return Domain.AND( + [ + Domain("partner_id", "child_of", root.id), + Domain.OR( + [ + Domain("product_code", operator, name), + Domain("product_name", operator, name), + ] + ), + ] + ) diff --git a/product_customerinfo/models/product_pricelist_item.py b/product_customerinfo/models/product_pricelist_item.py new file mode 100644 index 00000000000..f2ea31acdea --- /dev/null +++ b/product_customerinfo/models/product_pricelist_item.py @@ -0,0 +1,36 @@ +# Copyright 2015 OdooMRP team +# Copyright 2015 AvanzOSC +# Copyright 2015 Tecnativa +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +from odoo import fields, models + + +class ProductPricelistItem(models.Model): + _inherit = "product.pricelist.item" + + base = fields.Selection( + selection_add=[("partner", "Partner Prices on the product form")], + ondelete={"partner": "set default"}, + ) + + def _compute_price(self, product, quantity, uom, date, currency=None, **kwargs): + return super()._compute_price( + product.with_context(include_customerinfo_discount=True), + quantity, + uom, + date, + currency, + **kwargs, + ) + + def _show_discount(self): + # Show discount when pricelist item is based on customerinfo price + res = super()._show_discount() + if ( + self + and self._is_discount_feature_enabled() + and self.compute_price == "formula" + and self.base == "partner" + ): + return True + return res diff --git a/product_customerinfo/models/product_product.py b/product_customerinfo/models/product_product.py new file mode 100644 index 00000000000..1e21ffc81d0 --- /dev/null +++ b/product_customerinfo/models/product_product.py @@ -0,0 +1,144 @@ +# Copyright 2015 OdooMRP team +# Copyright 2015 AvanzOSC +# Copyright 2015 Tecnativa +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +import datetime + +from odoo import api, models +from odoo.fields import Domain + + +class ProductProduct(models.Model): + _inherit = "product.product" + + def _compute_display_name(self): + return super( + ProductProduct, self.with_context(customerinfo=True) + )._compute_display_name() + + @api.model + def name_search(self, name="", domain=None, operator="ilike", limit=100): + res = super().name_search(name, domain, operator, limit) + domain = Domain(domain or Domain.TRUE) + res_ids_len = len(res) + if ( + not name + and limit + or not self.env.context.get("partner_id") + or res_ids_len >= limit + ): + return res + limit -= res_ids_len + customer_domain = self.env["product.customerinfo"]._get_name_search_domain( + self.env.context.get("partner_id"), operator, name + ) + products = self.search_fetch( + Domain("product_tmpl_id.customer_ids", "any", customer_domain) & domain, + ["display_name"], + limit=limit, + ) + return res + [(product.id, product.display_name) for product in products.sudo()] + + def _get_price_from_customerinfo(self, partner_id): + self.ensure_one() + if not partner_id: + return 0.0 + partner = self.env["res.partner"].browse(partner_id) + customerinfo = self._select_customerinfo(partner=partner) + if not customerinfo: + return 0.0 + price = customerinfo.price + if self.env.context.get("include_customerinfo_discount") and price: + price = price - (price * (customerinfo.discount / 100)) + return price + + def _price_compute( + self, price_type, uom=False, currency=False, company=None, date=False + ): + if price_type == "partner": + partner_id = self.env.context.get( + "partner_id", False + ) or self.env.context.get("partner", False) + if partner_id and isinstance(partner_id, models.BaseModel): + partner_id = partner_id.id + prices = super()._price_compute( + "list_price", uom, currency, company, date=date + ) + for product in self: + price = product._get_price_from_customerinfo(partner_id) + if not price: + continue + prices[product.id] = price + if not uom and self.env.context.get("uom"): + uom = self.env["uom.uom"].browse(self.env.context["uom"]) + if not currency and self.env.context.get("currency"): + currency = self.env["res.currency"].browse( + self.env.context["currency"] + ) + if uom: + prices[product.id] = product.uom_id._compute_price( + prices[product.id], uom + ) + if currency: + date = self.env.context.get("date", datetime.datetime.now()) + prices[product.id] = product.currency_id._convert( + prices[product.id], currency, company, date + ) + return prices + return super()._price_compute(price_type, uom, currency, company, date=date) + + def _prepare_domain_customerinfo(self, params): + self.ensure_one() + partner_id = params.get("partner_id") + domain = Domain.OR( + [ + Domain("product_id", "=", self.id), + Domain.AND( + [ + Domain("product_tmpl_id", "=", self.product_tmpl_id.id), + Domain("product_id", "=", False), + ] + ), + ] + ) + + if partner_id: + partner = self.env["res.partner"].browse(partner_id) + partners = partner | partner.parent_id | partner.commercial_partner_id + domain = Domain.AND( + [ + domain, + Domain("partner_id", "in", partners.ids), + ] + ) + + return domain + + def _select_customerinfo( + self, partner=False, _quantity=0.0, _date=None, _uom_id=False, params=False + ): + """Customer version of the standard `_select_seller`.""" + # TODO: For now it is just the function name with same arguments, but + # can be changed in future migrations to be more in line Odoo + # standard way to select supplierinfo's. + if not params: + params = dict() + params.update({"partner_id": partner.id}) + domain = self._prepare_domain_customerinfo(params) + # Search for customerinfo records based on the domain + any_match = self.env["product.customerinfo"].search( + domain, order="sequence,min_qty,price,id" + ) + first_template_match = self.env["product.customerinfo"].browse() + # return the first customer_info matching the variant + # otherwise the first one matching the template + for customer_info in any_match: + if customer_info.product_id == self: + return customer_info + if ( + not customer_info.product_id + and not first_template_match + and customer_info.product_tmpl_id == self.product_tmpl_id + ): + first_template_match = customer_info + return first_template_match diff --git a/product_customerinfo/models/product_supplierinfo.py b/product_customerinfo/models/product_supplierinfo.py new file mode 100644 index 00000000000..abb1588833c --- /dev/null +++ b/product_customerinfo/models/product_supplierinfo.py @@ -0,0 +1,41 @@ +# Copyright 2019 ForgeFlow S.L. +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +from odoo import api, models + + +class ProductSupplierInfo(models.Model): + _inherit = "product.supplierinfo" + + @api.model + def search_fetch(self, domain, field_names=None, offset=0, limit=None, order=None): + res = super().search_fetch(domain, field_names, offset, limit, order) + if ( + self.env.context.get("customerinfo") + and self._name == "product.supplierinfo" + ): + limit2 = limit - len(res) if limit else limit + res2 = self.env["product.customerinfo"].search_fetch( + domain, field_names, offset, limit=limit2, order=order + ) + res2 = res2.read(list(self.env["product.supplierinfo"]._fields.keys())) + for result in res2: + res += self.env["product.supplierinfo"].new(result) + return res + + def read(self, fields=None, load="_classic_read"): + if ( + self.env.context.get("customerinfo") + and self._name == "product.supplierinfo" + ): + has_ids = self.filtered(lambda x: x.id in x._ids and isinstance(x.id, int)) + new_ids = self.filtered( + lambda x: x.id in x._ids and not isinstance(x.id, int) + ) + return super(ProductSupplierInfo, has_ids).read( + fields=fields, load=load + ) + [ + {f: x[f] for f in x._fields if (f in fields if fields else True)} + for x in new_ids + ] + else: + return super().read(fields=fields, load=load) diff --git a/product_customerinfo/models/product_template.py b/product_customerinfo/models/product_template.py new file mode 100644 index 00000000000..b3b6b001650 --- /dev/null +++ b/product_customerinfo/models/product_template.py @@ -0,0 +1,112 @@ +# Copyright 2015 OdooMRP team +# Copyright 2015 AvanzOSC +# Copyright 2015 Tecnativa +# Copyright 2019 Tecnativa - Pedro M. Baeza +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +from odoo import api, fields, models +from odoo.fields import Domain +from odoo.tools.misc import unique + + +class ProductTemplate(models.Model): + _inherit = "product.template" + + customer_ids = fields.One2many( + comodel_name="product.customerinfo", + inverse_name="product_tmpl_id", + string="Customer", + ) + + variant_customer_ids = fields.One2many( + comodel_name="product.customerinfo", + inverse_name="product_tmpl_id", + string="Variant Customer", + ) + + @api.depends_context("display_default_code", "company_id", "partner_id") + def _compute_display_name(self): + def get_display_name(name, code): + if self.env.context.get("display_default_code", True) and code: + return f"[{code}] {name}" + return name + + super()._compute_display_name() + partner_id = self.env.context.get("partner_id") + if not partner_id: + return + partner_ids = [ + partner_id, + self.env["res.partner"].browse(partner_id).commercial_partner_id.id, + ] + company_id = self.env.context.get("company_id") + + # all users don't have access to seller and partner + # check access and use superuser + self.check_access("read") + + product_template_ids = self.sudo().ids + supplier_info_by_template = {} + if partner_ids: + # prefetch the fields used by the `display_name` + domain = Domain.AND( + [ + Domain("product_tmpl_id", "in", product_template_ids), + Domain("product_id", "=", False), + Domain("partner_id", "in", partner_ids), + ] + ) + if company_id: + domain &= Domain("company_id", "in", [company_id, False]) + + supplier_info = ( + self.env["product.customerinfo"] + .sudo() + .search_fetch( + domain, + ["product_tmpl_id", "company_id", "product_name", "product_code"], + ) + ) + for r in supplier_info: + supplier_info_by_template.setdefault(r.product_tmpl_id, []).append(r) + + for product_template in self.sudo(): + name = product_template.name + product_supplier_info = ( + supplier_info_by_template.get(product_template) or [] + ) + if product_supplier_info: + temp = [] + for s in product_supplier_info: + temp.append( + get_display_name( + s.product_name or name, + s.product_code or product_template.default_code, + ) + ) + # => Feature drop here, + # one record can only have one display_name now, + # instead separate with `,` + product_template.display_name = ", ".join(unique(temp)) + + @api.model + def name_search(self, name="", domain=None, operator="ilike", limit=100): + res = super().name_search(name, domain, operator, limit) + domain = Domain(domain or Domain.TRUE) + res_ids_len = len(res) + if ( + not name + and limit + or not self.env.context.get("partner_id") + or res_ids_len >= limit + ): + return res + limit -= res_ids_len + customer_domain = self.env["product.customerinfo"]._get_name_search_domain( + self.env.context.get("partner_id"), operator, name + ) + products = self.search_fetch( + Domain("customer_ids", "any", customer_domain) & domain, + ["display_name"], + limit=limit, + ) + return res + [(product.id, product.display_name) for product in products.sudo()] diff --git a/product_customerinfo/models/res_partner.py b/product_customerinfo/models/res_partner.py new file mode 100644 index 00000000000..48fcc0ea7fc --- /dev/null +++ b/product_customerinfo/models/res_partner.py @@ -0,0 +1,22 @@ +# Copyright 2015 OdooMRP team +# Copyright 2015 AvanzOSC +# Copyright 2015 Tecnativa +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). +from odoo import api, models + + +class ResPartner(models.Model): + _inherit = "res.partner" + + @api.model + def default_get(self, fields): + res = super().default_get(fields) + select_type = self.env.context.get("select_type", False) + if select_type: + res.update( + { + "customer": select_type == "customer", + "supplier": select_type == "supplier", + } + ) + return res diff --git a/product_customerinfo/pyproject.toml b/product_customerinfo/pyproject.toml new file mode 100644 index 00000000000..4231d0cccb3 --- /dev/null +++ b/product_customerinfo/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/product_customerinfo/readme/CONFIGURE.md b/product_customerinfo/readme/CONFIGURE.md new file mode 100644 index 00000000000..382330ba9f9 --- /dev/null +++ b/product_customerinfo/readme/CONFIGURE.md @@ -0,0 +1,4 @@ +For these prices to be used in sale prices calculations, you will have +to create a pricelist with a rule with option "Based on" with the value +"Partner Prices: Take the price from the customer info on the 'product +form')". diff --git a/product_customerinfo/readme/CONTRIBUTORS.md b/product_customerinfo/readme/CONTRIBUTORS.md new file mode 100644 index 00000000000..48b2d7b05c2 --- /dev/null +++ b/product_customerinfo/readme/CONTRIBUTORS.md @@ -0,0 +1,10 @@ +- Oihane Crucelaegui \<\> +- Aaron Henriquez \<\> +- Miquel Raïch \<\> +- [Tecnativa](https://www.tecnativa.com): + - Pedro M. Baeza + - Sergio Teruel + - Carlos Lopez +- [Komit](https://komit-consulting.com): + - Vang Nguyen Phu +- Maksym Yankin \<\> diff --git a/product_customerinfo/readme/DESCRIPTION.md b/product_customerinfo/readme/DESCRIPTION.md new file mode 100644 index 00000000000..8cc025e20a4 --- /dev/null +++ b/product_customerinfo/readme/DESCRIPTION.md @@ -0,0 +1,8 @@ +This module allows you to define a customer-specific product data structure (patterned after the standard supplier/vendor info) on the product form. + +This structure enables defining customized information for each customer and product, including: + + - Custom Price (Price-list price) + - Customer Product Name + - Customer Product Code + - Minimum Order Quantity (MOQ) diff --git a/product_customerinfo/readme/ROADMAP.md b/product_customerinfo/readme/ROADMAP.md new file mode 100644 index 00000000000..109e26abdef --- /dev/null +++ b/product_customerinfo/readme/ROADMAP.md @@ -0,0 +1,3 @@ +- Product prices through this method are only guaranteed on the standard + sale order workflow. Other custom flows maybe don't reflect the price. +- The minimum quantity will neither apply on sale orders. diff --git a/product_customerinfo/readme/USAGE.md b/product_customerinfo/readme/USAGE.md new file mode 100644 index 00000000000..df2246b0129 --- /dev/null +++ b/product_customerinfo/readme/USAGE.md @@ -0,0 +1,6 @@ +There's a new section on *Sales* tab of the product form called +"Customers", where you can define records for customers with the same +structure of the suppliers. + +There's a new option on pricelist items that allows to get the prices +from the supplierinfo at the product form. diff --git a/product_customerinfo/security/ir.model.access.csv b/product_customerinfo/security/ir.model.access.csv new file mode 100644 index 00000000000..45c63505743 --- /dev/null +++ b/product_customerinfo/security/ir.model.access.csv @@ -0,0 +1,3 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_product_customerinfo_user,product.customerinfo.user,model_product_customerinfo,base.group_user,1,0,0,0 +access_product_customerinfo_manager,product.customerinfo.manager,model_product_customerinfo,base.group_system,1,1,1,1 diff --git a/product_customerinfo/static/description/icon.png b/product_customerinfo/static/description/icon.png new file mode 100644 index 00000000000..3a0328b516c Binary files /dev/null and b/product_customerinfo/static/description/icon.png differ diff --git a/product_customerinfo/static/description/index.html b/product_customerinfo/static/description/index.html new file mode 100644 index 00000000000..cdfcf4e27e0 --- /dev/null +++ b/product_customerinfo/static/description/index.html @@ -0,0 +1,481 @@ + + + + + +README.rst + + + +
+ + + +Odoo Community Association + +
+

Product Supplierinfo for Customers

+ +

Production/Stable License: AGPL-3 OCA/product-attribute Translate me on Weblate Try me on Runboat

+

This module allows you to define a customer-specific product data +structure (patterned after the standard supplier/vendor info) on the +product form.

+

This structure enables defining customized information for each customer +and product, including:

+
+- Custom Price (Price-list price)
+- Customer Product Name
+- Customer Product Code
+- Minimum Order Quantity (MOQ)
+
+

Table of contents

+ +
+

Configuration

+

For these prices to be used in sale prices calculations, you will have +to create a pricelist with a rule with option “Based on” with the value +“Partner Prices: Take the price from the customer info on the ‘product +form’)”.

+
+
+

Usage

+

There’s a new section on Sales tab of the product form called +“Customers”, where you can define records for customers with the same +structure of the suppliers.

+

There’s a new option on pricelist items that allows to get the prices +from the supplierinfo at the product form.

+
+
+

Known issues / Roadmap

+
    +
  • Product prices through this method are only guaranteed on the standard +sale order workflow. Other custom flows maybe don’t reflect the price.
  • +
  • The minimum quantity will neither apply on sale orders.
  • +
+
+
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • AvanzOSC
  • +
  • Tecnativa
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+ +Odoo Community Association + +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

Current maintainer:

+

luisg123v

+

This module is part of the OCA/product-attribute project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+
+ + diff --git a/product_customerinfo/static/xls/product_customerinfo.xls b/product_customerinfo/static/xls/product_customerinfo.xls new file mode 100644 index 00000000000..e318a2f05d2 Binary files /dev/null and b/product_customerinfo/static/xls/product_customerinfo.xls differ diff --git a/product_customerinfo/tests/__init__.py b/product_customerinfo/tests/__init__.py new file mode 100644 index 00000000000..6aa2dabacd5 --- /dev/null +++ b/product_customerinfo/tests/__init__.py @@ -0,0 +1,2 @@ +from . import test_product_customerinfo +from . import test_product_name_search diff --git a/product_customerinfo/tests/test_product_customerinfo.py b/product_customerinfo/tests/test_product_customerinfo.py new file mode 100644 index 00000000000..1f8616f536e --- /dev/null +++ b/product_customerinfo/tests/test_product_customerinfo.py @@ -0,0 +1,241 @@ +# Copyright 2015 OdooMRP team +# Copyright 2015 AvanzOSC +# Copyright 2015 Tecnativa +# Copyright 2018 ForgeFlow +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). + +from odoo.fields import Datetime, Domain + +from odoo.addons.base.tests.common import BaseCommon + + +class TestProductSupplierinfoForCustomer(BaseCommon): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.supplierinfo_model = cls.env["product.supplierinfo"] + cls.customerinfo_model = cls.env["product.customerinfo"] + cls.pricelist_item_model = cls.env["product.pricelist.item"] + cls.pricelist_model = cls.env["product.pricelist"] + cls.customer = cls._create_customer("customer1") + cls.unknown = cls._create_customer("customer2") + cls.product = cls.env["product.product"].create({"name": "Test product"}) + cls.customerinfo = cls._create_partnerinfo( + "customer", cls.customer, cls.product + ) + cls.pricelist = cls.env["product.pricelist"].create( + {"name": "Test Pricelist", "currency_id": cls.env.ref("base.USD").id} + ) + cls.company = cls.env.ref("base.main_company") + cls.pricelist_item = cls.env["product.pricelist.item"].create( + { + "applied_on": "1_product", + "base": "list_price", + "name": "Test Pricelist Item", + "pricelist_id": cls.pricelist.id, + "compute_price": "fixed", + "fixed_price": 100.0, + "product_tmpl_id": cls.product.product_tmpl_id.id, + } + ) + + @classmethod + def _create_customer(cls, name): + """Create a Partner.""" + return cls.env["res.partner"].create( + {"name": name, "email": "example@yourcompany.com", "phone": 123456} + ) + + @classmethod + def _create_partnerinfo(cls, supplierinfo_type, partner, product): + return cls.env["product." + supplierinfo_type + "info"].create( + { + "partner_id": partner.id, + "product_id": product.id, + "product_code": "00001", + "price": 100.0, + "sequence": 10, + } + ) + + def test_default_get(self): + """checking values returned by default_get()""" + fields = ["name"] + values = self.customer.with_context(select_type=True).default_get(fields) + self.assertEqual(values["customer"], False, "Incorrect default") + + def test_product_customerinfo(self): + cond = Domain("partner_id", "=", self.customer.id) + supplierinfos = self.supplierinfo_model.search(cond) + self.assertEqual(len(supplierinfos), 0, "Error: Supplier found in Supplierinfo") + cond = Domain("partner_id", "=", self.customer.id) + customerinfos = self.customerinfo_model.search(cond) + self.assertNotEqual( + len(customerinfos), 0, "Error: Customer not found in Supplierinfo" + ) + price, rule_id = self.pricelist._get_product_price_rule( + self.product, 1, partner=self.customer + ) + self.assertEqual( + rule_id, self.pricelist_item.id, "Error: Price unit not found for customer" + ) + self.assertEqual( + price, 100.0, "Error: Price not found for product and customer" + ) + + def test_product_supplierinfo_price(self): + price = self.product._get_price_from_customerinfo(partner_id=self.customer.id) + self.assertEqual( + price, 100.0, "Error: Price not found for product and customer" + ) + self.product.company_id = self.company + res = self.product.with_context(partner_id=self.customer.id)._price_compute( + "partner", self.product.uom_id, self.company.currency_id, self.company + ) + self.assertEqual( + res[self.product.id], 100.0, "Error: Wrong price for product and customer" + ) + res = self.product.with_context(partner_id=self.unknown.id)._price_compute( + "partner", self.product.uom_id, self.company.currency_id, self.company + ) + self.assertEqual( + res[self.product.id], 1.0, "Error: price does not match list price" + ) + + def test_product_supplierinfo_discount(self): + self.customerinfo.write({"discount": 10.0}) + self.pricelist_item.write({"base": "partner", "compute_price": "formula"}) + price = self.pricelist_item._compute_price( + self.product.with_context(partner_id=self.customer.id), + 1, + self.product.uom_id, + Datetime.now(), + self.company.currency_id, + ) + base_price = self.pricelist_item._compute_base_price( + self.product.with_context(partner_id=self.customer.id), + 1, + self.product.uom_id, + Datetime.now(), + self.company.currency_id, + ) + self.assertEqual( + base_price, 100.0, "Error: Wrong base price for product and customer" + ) + self.assertEqual( + price, 90.0, "Error: Discount not applied for product and customer" + ) + + def test_variant_supplierinfo_price(self): + """ + This test check the price for a customer with a product with variants. + Create a pricelist based on partner price. + Assign specific price for a variant (100.0) and for template (all + other variants --> 30.0). + """ + self.piece_template = self.env["product.template"].create( + { + "name": "Piece for test", + "list_price": 10.0, + "company_id": self.company.id, + } + ) + self.large_attribute = self.env["product.attribute"].create( + {"name": "Large test", "sequence": 1} + ) + self.large_125 = self.env["product.attribute.value"].create( + { + "name": "Large 125", + "attribute_id": self.large_attribute.id, + "sequence": 1, + } + ) + self.large_250 = self.env["product.attribute.value"].create( + { + "name": "Large 250", + "attribute_id": self.large_attribute.id, + "sequence": 2, + } + ) + self.piece_large_attribute_lines = self.env[ + "product.template.attribute.line" + ].create( + { + "product_tmpl_id": self.piece_template.id, + "attribute_id": self.large_attribute.id, + "value_ids": [(6, 0, [self.large_125.id, self.large_250.id])], + } + ) + template = self.piece_template + product = template.product_variant_ids[0] + product_1 = template.product_variant_ids[1] + + pricelist = self.env["product.pricelist"].create( + { + "name": "Test Pricelist Customer", + "currency_id": self.env.ref("base.USD").id, + } + ) + self.env["product.pricelist.item"].create( + { + "applied_on": "3_global", + "base": "partner", + "name": "Test Pricelist Item", + "pricelist_id": pricelist.id, + "compute_price": "formula", + } + ) + self._create_partnerinfo("customer", self.customer, product) + price_by_template = self.customerinfo_model.create( + { + "partner_id": self.customer.id, + "product_tmpl_id": template.id, + "price": 30.0, + "sequence": 20, + } + ) + res = product.with_context(partner_id=self.customer.id)._price_compute( + "partner", product.uom_id, self.company.currency_id, self.company + ) + self.assertEqual(res[product.id], 100.0) + res = product_1.with_context(partner_id=self.customer.id)._price_compute( + "partner", product_1.uom_id, self.company.currency_id, self.company + ) + self.assertEqual(res[product_1.id], 30.0) + # Remove template specific price, the price must be the template + # list_price + price_by_template.unlink() + res = product_1.with_context(partner_id=self.customer.id)._price_compute( + "partner", product_1.uom_id, self.company.currency_id, self.company + ) + self.assertEqual(res[product_1.id], 10.0) + + def test_child_customer_pricing(self): + """Test pricing for child contact of a parent customer""" + # Create child contact + child_customer = self._create_customer("child_customer") + child_customer.parent_id = self.customer.id + child_customer.is_company = False + + # Create customerinfo for parent + self._create_partnerinfo("customer", self.customer, self.product) + + # Test that child inherits pricing from parent + price = self.product._get_price_from_customerinfo(partner_id=child_customer.id) + self.assertEqual( + price, 100.0, "Error: Child customer should inherit price from parent" + ) + + # Test price computation with child customer context + res = self.product.with_context(partner_id=child_customer.id)._price_compute( + "partner", self.product.uom_id, self.company.currency_id, self.company + ) + self.assertEqual( + res[self.product.id], 100.0, "Error: Wrong price for child customer" + ) + + # Test pricelist with child customer + price, rule_id = self.pricelist._get_product_price_rule( + self.product, 1, partner=child_customer + ) + self.assertEqual(price, 100.0, "Error: Price not found for child customer") diff --git a/product_customerinfo/tests/test_product_name_search.py b/product_customerinfo/tests/test_product_name_search.py new file mode 100644 index 00000000000..7caa28120a7 --- /dev/null +++ b/product_customerinfo/tests/test_product_name_search.py @@ -0,0 +1,88 @@ +# Copyright 2017 Vauxoo (https://www.vauxoo.com) info@vauxoo.com +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html) + +from odoo.addons.base.tests.common import BaseCommon + + +class TestProductNameSearch(BaseCommon): + """Test for: + - Assign a configuration customer for product. + - Test product name_search + """ + + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.supplier = cls.env["res.partner"].create({"name": "Supplier"}) + cls.customer = cls.env["res.partner"].create({"name": "Customer"}) + cls.product = ( + cls.env["product.product"] + .create({"name": "Name_product", "default_code": "code_product"}) + .with_context(**{"partner_id": cls.customer.id}) + ) + cls.supplierinfo = cls.env["product.supplierinfo"] + cls.customerinfo = cls.env["product.customerinfo"] + cls.customerinfo_dict = { + "product_code": "code_test", + "product_name": "Name_test", + "partner_id": cls.customer.id, + "product_tmpl_id": cls.product.product_tmpl_id.id, + } + + def test_10_find_product_customer_code(self): + """Assign a product_customerinfo to the product and then search it + using name_search + """ + self.assertFalse(self.product.customer_ids) + + self.customerinfo.create(self.customerinfo_dict) + self.assertTrue(self.product.customer_ids) + + # Search by product customer code + product_names = self.product.name_search(name="code_test") + self.assertEqual(len(product_names), 1) + self.assertEqual(self.product.id, product_names[0][0]) + self.assertEqual("[code_test] Name_test", product_names[0][1]) + # search by product template + product_template = self.product.product_tmpl_id.with_context( + partner_id=self.customer.id + ) + product_names = product_template.name_search(name="code_test") + self.assertEqual(len(product_names), 1) + self.assertEqual(product_template.id, product_names[0][0]) + self.assertEqual("[code_product] Name_product", product_names[0][1]) + + # Search by product default code with the customer used in + # configuration customer + product_names = self.product.name_search(name="code_product") + self.assertEqual(len(product_names), 1) + self.assertEqual(self.product.id, product_names[0][0]) + self.assertEqual("[code_test] Name_test", product_names[0][1]) + + # Search by product default code with a different customer used in + # configuration customer + product_names = self.product.with_context( + partner_id=self.supplier.id + ).name_search(name="code_product") + self.assertEqual(len(product_names), 1) + self.assertEqual(self.product.id, product_names[0][0]) + self.assertEqual("[code_product] Name_product", product_names[0][1]) + + # Create a product_1 with default_code similar to customer_code of + # product, then name_search must find two products + self.product_1 = ( + self.env["product.product"] + .create({"name": "Name_test_1", "default_code": "code_test_1"}) + .with_context(**{"partner_id": self.customer.id}) + ) + + self.assertFalse(self.product_1.customer_ids) + + # Search by product customer code + product_names = self.product.name_search(name="code_test") + self.assertEqual(len(product_names), 2) + product_names = product_names[0] + product_names[1] + self.assertIn(self.product.id, product_names) + self.assertIn(self.product_1.id, product_names) + self.assertIn("[code_test] Name_test", product_names) + self.assertIn("[code_test_1] Name_test_1", product_names) diff --git a/product_customerinfo/views/product_views.xml b/product_customerinfo/views/product_views.xml new file mode 100644 index 00000000000..92b1841c41b --- /dev/null +++ b/product_customerinfo/views/product_views.xml @@ -0,0 +1,195 @@ + + + + product.customerinfo.form.view + product.customerinfo + +
+ + + + + + + + + + + + + + + + +
+
+
+ + product.customerinfo.tree.view + product.customerinfo + + + + + + + + + + + + + + + + + + + + product.template + + + + + + + + + + + product.product + + + + {'default_product_tmpl_id': product_tmpl_id, 'product_template_invisible_variant': True, 'form_view_ref': 'product_customerinfo.product_customerinfo_form_view'} + + + {'default_product_tmpl_id': product_tmpl_id, 'default_product_id': id, 'form_view_ref': 'product_customerinfo.product_customerinfo_form_view'} + + + + + product.customerinfo.search.view + product.customerinfo + + + + + + + + + + + + + + + + + +