diff --git a/sale_quotation_number/README.rst b/sale_quotation_number/README.rst new file mode 100644 index 00000000000..f9d572bf286 --- /dev/null +++ b/sale_quotation_number/README.rst @@ -0,0 +1,148 @@ +========================= +Sale Quotation Numeration +========================= + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:b204404baeaf30f19420d774f219bfcdb64e012ab7c9ed18288e2cd06da80b4c + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/licence-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%2Fsale--workflow-lightgray.png?logo=github + :target: https://github.com/OCA/sale-workflow/tree/17.0/sale_quotation_number + :alt: OCA/sale-workflow +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/sale-workflow-17-0/sale-workflow-17-0-sale_quotation_number + :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/sale-workflow&target_branch=17.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +- Sale Quotation: + + - Sale process in draft stage just informing prices and element of + communication. + +- Sale Order: + + - Sale process confirmed, the customer already have a compromise + with us in terms of pay an invoice and receive our product or + service. + +Originally Odoo manage only 1 sequence for this 2 documents, then the +sales order won and lost manage the same sequence losing almost all lost +quotations in terms of sequences, making so difficult understand with a +quick view if we are good or bad in terms of logistic and sale process +already confirmed. + +**Technical Explanation** + +When you create a quotation, it is numbered using the 'sale.quotation' +sequence. When you confirm a quotation, its orginal number is saved in +the 'origin' field and the sale order gets a new number, retrieving it +from 'sale.order' sequence. + +- With Odoo Base: + + Sale Quotation 1 Number = SO001 + + Sale Quotation 2 Number = SO002 + + Sale Quotation 3 Number = SO003 + + Sale Quotation 4 Number = SO004 + +- With Odoo + This Module: + + Sale Quotation 1 Number = SQ001 + + Sale Quotation 2 Number = SQ002 + + Sale Quotation 3 Number = SQ003 + + Sale Quotation 4 Number = SQ004 + + Sale Quotation 2 Confirmed = Number for Sale Order SO001 from Sale + Quotation SQ002 + + Sale Quotation 1 Confirmed = Number for Sale Order SO002 from Sale + Quotation SQ001 + + Sale Quotation 4 Confirmed = Number for Sale Order SO003 from Sale + Quotation SQ004 + +**Table of contents** + +.. contents:: + :local: + +Configuration +============= + +To configure this module you need to go to Sales -> Configuration and +uncheck 'Use same enumeration for quotations and 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 +------- + +* Elico Corp +* Agile Business Group +* Qubiq + +Contributors +------------ + +- Andy Lu +- Lorenzo Battistini +- Valentin Vinagre Urteaga +- Serpent Consulting Services Pvt. Ltd. +- Manuel Regidor +- Vishnu Vanneri +- Ruchir Shukla +- Dhara Solanki + +Other credits +------------- + +- Odoo Community Association: + `Icon `__. + +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. + +This module is part of the `OCA/sale-workflow `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/sale_quotation_number/__init__.py b/sale_quotation_number/__init__.py new file mode 100644 index 00000000000..21101d3490d --- /dev/null +++ b/sale_quotation_number/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl) + +from . import models diff --git a/sale_quotation_number/__manifest__.py b/sale_quotation_number/__manifest__.py new file mode 100644 index 00000000000..1875b43d826 --- /dev/null +++ b/sale_quotation_number/__manifest__.py @@ -0,0 +1,21 @@ +# Copyright 2010-2012 Andy Lu (Elico Corp) +# Copyright 2013 Agile Business Group sagl () +# Copyright 2017 valentin vinagre (QubiQ) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl) + +{ + "name": "Sale Quotation Numeration", + "summary": "Different sequence for sale quotations", + "version": "17.0.1.0.0", + "category": "Sales Management", + "website": "https://github.com/OCA/sale-workflow", + "author": "Elico Corp, " + "Agile Business Group, " + "Qubiq, " + "Odoo Community Association (OCA)", + "license": "AGPL-3", + "application": False, + "installable": True, + "depends": ["sale_management"], + "data": ["data/ir_sequence_data.xml", "views/sales_config.xml"], +} diff --git a/sale_quotation_number/data/ir_sequence_data.xml b/sale_quotation_number/data/ir_sequence_data.xml new file mode 100644 index 00000000000..5076cd92847 --- /dev/null +++ b/sale_quotation_number/data/ir_sequence_data.xml @@ -0,0 +1,17 @@ + + + + + + Sales Quotation + sale.quotation + SQ + 3 + + + diff --git a/sale_quotation_number/i18n/ca.po b/sale_quotation_number/i18n/ca.po new file mode 100644 index 00000000000..b49220fe362 --- /dev/null +++ b/sale_quotation_number/i18n/ca.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-14 06:38+0000\n" +"PO-Revision-Date: 2021-01-20 12:44+0000\n" +"Last-Translator: Daniel Martinez Vila \n" +"Language-Team: Catalan (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/ca/)\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: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "Empreses" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "Config. de la Configuració" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" +"Si no es marca aquesta opció, els presupostos utilitzen una seqüència " +"diferent de les comandes de venda" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Comandes de venda" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "Utilitzeu la mateixa enumeració" diff --git a/sale_quotation_number/i18n/de.po b/sale_quotation_number/i18n/de.po new file mode 100644 index 00000000000..532d6234586 --- /dev/null +++ b/sale_quotation_number/i18n/de.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-09-09 12:27+0000\n" +"PO-Revision-Date: 2021-07-09 15:48+0000\n" +"Last-Translator: Maria Sparenberg \n" +"Language-Team: German (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/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" +"X-Generator: Weblate 4.3.2\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "Unternehmen" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "Konfigurationseinstellungen" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" +"Wenn das Häkchen nicht aktiviert ist, werden Angebote anders als Aufträge " +"nummeriert, da sie eine andere Sequenz verwenden." + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Verkaufsauftrag" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "Dieselbe Nummerierung verwenden" + +#~ msgid "Quotation" +#~ msgstr "Angebot" diff --git a/sale_quotation_number/i18n/es.po b/sale_quotation_number/i18n/es.po new file mode 100644 index 00000000000..4fa14513b05 --- /dev/null +++ b/sale_quotation_number/i18n/es.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-09-09 12:27+0000\n" +"PO-Revision-Date: 2020-10-26 12:08+0000\n" +"Last-Translator: Daniel Martinez Vila \n" +"Language-Team: Spanish (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/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 3.10\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "Compañías" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "Config Ajustes" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" +"Si no está marcado, las cotizaciones utilizan una secuencia diferente a las " +"órdenes de venta" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Pedido de venta" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "Usar la misma enumeración" diff --git a/sale_quotation_number/i18n/es_ES.po b/sale_quotation_number/i18n/es_ES.po new file mode 100644 index 00000000000..0b123102b5f --- /dev/null +++ b/sale_quotation_number/i18n/es_ES.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-04 13:41+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Spanish (Spain) (http://www.transifex.com/oca/OCA-sale-" +"workflow-8-0/language/es_ES/)\n" +"Language: es_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" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Pedido de venta" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/fi.po b/sale_quotation_number/i18n/fi.po new file mode 100644 index 00000000000..d3e6a6447e6 --- /dev/null +++ b/sale_quotation_number/i18n/fi.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-09-09 12:27+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Finnish (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/fi/)\n" +"Language: fi\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: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Myyntitilaus" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/fr.po b/sale_quotation_number/i18n/fr.po new file mode 100644 index 00000000000..424c06ab3f3 --- /dev/null +++ b/sale_quotation_number/i18n/fr.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-09-09 12:27+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: French (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/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" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Bon de commande" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/hr.po b/sale_quotation_number/i18n/hr.po new file mode 100644 index 00000000000..2e138ce786e --- /dev/null +++ b/sale_quotation_number/i18n/hr.po @@ -0,0 +1,49 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-11-22 23:35+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Croatian (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/hr/)\n" +"Language: hr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Prodajni nalog" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/hu.po b/sale_quotation_number/i18n/hu.po new file mode 100644 index 00000000000..62430ca6711 --- /dev/null +++ b/sale_quotation_number/i18n/hu.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-10 05:55+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Hungarian (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/hu/)\n" +"Language: hu\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: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Vevői megrendelés" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/it.po b/sale_quotation_number/i18n/it.po new file mode 100644 index 00000000000..ba7d4da96cc --- /dev/null +++ b/sale_quotation_number/i18n/it.po @@ -0,0 +1,49 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2018-01-22 10:25+0000\n" +"PO-Revision-Date: 2023-12-01 15:35+0000\n" +"Last-Translator: mymage \n" +"Language-Team: \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 4.17\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "Aziende" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "Impostazioni configurazione" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" +"Se disattivato, i preventivi utilizzano una sequenza diversa dagli ordini di " +"vendita" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Ordine di vendita" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "Utilizzare la stessa numerazione" diff --git a/sale_quotation_number/i18n/nl.po b/sale_quotation_number/i18n/nl.po new file mode 100644 index 00000000000..8da1cd0d50b --- /dev/null +++ b/sale_quotation_number/i18n/nl.po @@ -0,0 +1,49 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-10-23 08:14+0000\n" +"PO-Revision-Date: 2021-01-26 00:06+0000\n" +"Last-Translator: Bosd \n" +"Language-Team: Dutch (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/nl/)\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" +"X-Generator: Weblate 4.3.2\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "Bedrijven" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Verkooporder" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/nl_NL.po b/sale_quotation_number/i18n/nl_NL.po new file mode 100644 index 00000000000..f9df44bab69 --- /dev/null +++ b/sale_quotation_number/i18n/nl_NL.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-08-29 03:52+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Dutch (Netherlands) (http://www.transifex.com/oca/OCA-sale-" +"workflow-8-0/language/nl_NL/)\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" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Verkooporder" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/pt_BR.po b/sale_quotation_number/i18n/pt_BR.po new file mode 100644 index 00000000000..02d9d633218 --- /dev/null +++ b/sale_quotation_number/i18n/pt_BR.po @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-10 05:55+0000\n" +"PO-Revision-Date: 2021-02-14 22:45+0000\n" +"Last-Translator: Eder Brito \n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/oca/OCA-sale-" +"workflow-8-0/language/pt_BR/)\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.3.2\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "Empresas" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "Definições de Configuração" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" +"Se for desmarcado, as cotações usarão uma sequencia diferente dos pedidos de " +"venda" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Pedidos de Venda" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "Use a Mesma Numeração" diff --git a/sale_quotation_number/i18n/ro.po b/sale_quotation_number/i18n/ro.po new file mode 100644 index 00000000000..3bf56dd8487 --- /dev/null +++ b/sale_quotation_number/i18n/ro.po @@ -0,0 +1,49 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-22 12:41+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Romanian (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/ro/)\n" +"Language: ro\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?" +"2:1));\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Comandă vânzare" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/sale_quotation_number.pot b/sale_quotation_number/i18n/sale_quotation_number.pot new file mode 100644 index 00000000000..8cf25ac19a2 --- /dev/null +++ b/sale_quotation_number/i18n/sale_quotation_number.pot @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.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: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/sk.po b/sale_quotation_number/i18n/sk.po new file mode 100644 index 00000000000..78558df87bc --- /dev/null +++ b/sale_quotation_number/i18n/sk.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-09-26 08:15+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Slovak (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/sk/)\n" +"Language: sk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Objednávka predaja" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/sl.po b/sale_quotation_number/i18n/sl.po new file mode 100644 index 00000000000..db650c71291 --- /dev/null +++ b/sale_quotation_number/i18n/sl.po @@ -0,0 +1,49 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-09-09 12:27+0000\n" +"PO-Revision-Date: 2015-09-07 14:32+0000\n" +"Last-Translator: Matjaž Mozetič \n" +"Language-Team: Slovenian (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/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: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Prodajni nalog" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/tr.po b/sale_quotation_number/i18n/tr.po new file mode 100644 index 00000000000..12e2523eb21 --- /dev/null +++ b/sale_quotation_number/i18n/tr.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-12-05 23:35+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Turkish (http://www.transifex.com/oca/OCA-sale-workflow-8-0/" +"language/tr/)\n" +"Language: tr\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: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Sipariş Emri" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/tr_TR.po b/sale_quotation_number/i18n/tr_TR.po new file mode 100644 index 00000000000..558feb17a8d --- /dev/null +++ b/sale_quotation_number/i18n/tr_TR.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-01-04 10:48+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: <>\n" +"Language-Team: Turkish (Turkey) (http://www.transifex.com/oca/OCA-sale-" +"workflow-8-0/language/tr_TR/)\n" +"Language: tr_TR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "Satış emri" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/i18n/zh_CN.po b/sale_quotation_number/i18n/zh_CN.po new file mode 100644 index 00000000000..21a42c4f4cd --- /dev/null +++ b/sale_quotation_number/i18n/zh_CN.po @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_quotation_number +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: sale-workflow (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-09-09 12:27+0000\n" +"PO-Revision-Date: 2015-09-03 07:10+0000\n" +"Last-Translator: OCA Transbot \n" +"Language-Team: Chinese (China) (http://www.transifex.com/oca/OCA-sale-" +"workflow-8-0/language/zh_CN/)\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_company +msgid "Companies" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model.fields,help:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,help:sale_quotation_number.field_res_config_settings__keep_name_so +#: model_terms:ir.ui.view,arch_db:sale_quotation_number.res_config_settings_view_form_quotation_number +msgid "" +"If this is unchecked, quotations use a different sequence from sale orders" +msgstr "" + +#. module: sale_quotation_number +#: model:ir.model,name:sale_quotation_number.model_sale_order +msgid "Sales Order" +msgstr "销售订单" + +#. module: sale_quotation_number +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_company__keep_name_so +#: model:ir.model.fields,field_description:sale_quotation_number.field_res_config_settings__keep_name_so +msgid "Use Same Enumeration" +msgstr "" diff --git a/sale_quotation_number/models/__init__.py b/sale_quotation_number/models/__init__.py new file mode 100644 index 00000000000..797c5acfc60 --- /dev/null +++ b/sale_quotation_number/models/__init__.py @@ -0,0 +1,4 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl) + +from . import res_company +from . import sale_order diff --git a/sale_quotation_number/models/res_company.py b/sale_quotation_number/models/res_company.py new file mode 100644 index 00000000000..8d9739588a3 --- /dev/null +++ b/sale_quotation_number/models/res_company.py @@ -0,0 +1,27 @@ +# © 2010-2012 Andy Lu (Elico Corp) +# © 2013 Agile Business Group sagl () +# © 2017 valentin vinagre (QubiQ) +# © 2020 Manuel Regidor +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl) + +from odoo import fields, models + + +class ResCompany(models.Model): + _inherit = "res.company" + + keep_name_so = fields.Boolean( + string="Use Same Enumeration", + help="If this is unchecked, quotations use a different sequence from " + "sale orders", + default=True, + ) + + +class ResConfigSettings(models.TransientModel): + _inherit = "res.config.settings" + + keep_name_so = fields.Boolean( + related="company_id.keep_name_so", + readonly=False, + ) diff --git a/sale_quotation_number/models/sale_order.py b/sale_quotation_number/models/sale_order.py new file mode 100644 index 00000000000..6e5f7c88697 --- /dev/null +++ b/sale_quotation_number/models/sale_order.py @@ -0,0 +1,61 @@ +# © 2010-2012 Andy Lu (Elico Corp) +# © 2013 Agile Business Group sagl () +# © 2017 valentin vinagre (QubiQ) +# © 2020 Manuel Regidor +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl) + +from odoo import api, models + + +class SaleOrder(models.Model): + _inherit = "sale.order" + + @api.model_create_multi + def create(self, vals_list): + for vals in vals_list: + if self.is_using_quotation_number(vals): + company_id = vals.get("company_id", self.env.company.id) + sequence = ( + self.with_company(company_id) + .env["ir.sequence"] + .next_by_code("sale.quotation") + ) + vals["name"] = sequence or "/" + return super().create(vals_list) + + @api.model + def is_using_quotation_number(self, vals): + company = False + if "company_id" in vals: + company = self.env["res.company"].browse(vals.get("company_id")) + else: + company = self.env.company + return not company.keep_name_so + + def copy(self, default=None): + self.ensure_one() + if default is None: + default = {} + if self.origin and self.origin != "": + default["origin"] = self.origin + ", " + self.name + else: + default["origin"] = self.name + return super().copy(default) + + def action_confirm(self): + for order in self: + if self.name[:2] != "SQ": + continue + if order.state not in ("draft", "sent") or order.company_id.keep_name_so: + continue + if order.origin and order.origin != "": + quo = order.origin + ", " + order.name + else: + quo = order.name + sequence = ( + self.with_company(order.company_id.id) + .env["ir.sequence"] + .next_by_code("sale.order") + ) + order.write({"origin": quo, "name": sequence}) + return super().action_confirm() diff --git a/sale_quotation_number/pyproject.toml b/sale_quotation_number/pyproject.toml new file mode 100644 index 00000000000..4231d0cccb3 --- /dev/null +++ b/sale_quotation_number/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/sale_quotation_number/readme/CONFIGURE.md b/sale_quotation_number/readme/CONFIGURE.md new file mode 100644 index 00000000000..7ce0cac4168 --- /dev/null +++ b/sale_quotation_number/readme/CONFIGURE.md @@ -0,0 +1,2 @@ +To configure this module you need to go to Sales -\> Configuration and +uncheck 'Use same enumeration for quotations and sale orders'. diff --git a/sale_quotation_number/readme/CONTRIBUTORS.md b/sale_quotation_number/readme/CONTRIBUTORS.md new file mode 100644 index 00000000000..c030feddc4f --- /dev/null +++ b/sale_quotation_number/readme/CONTRIBUTORS.md @@ -0,0 +1,8 @@ +- Andy Lu \<\> +- Lorenzo Battistini \<\> +- Valentin Vinagre Urteaga \<\> +- Serpent Consulting Services Pvt. Ltd. \<\> +- Manuel Regidor \<\> +- Vishnu Vanneri \<\> +- Ruchir Shukla \<\> +- Dhara Solanki \<\> diff --git a/sale_quotation_number/readme/CREDITS.md b/sale_quotation_number/readme/CREDITS.md new file mode 100644 index 00000000000..2d9d8b611e6 --- /dev/null +++ b/sale_quotation_number/readme/CREDITS.md @@ -0,0 +1,2 @@ +- Odoo Community Association: + [Icon](https://github.com/OCA/maintainer-tools/blob/master/template/module/static/description/icon.svg). diff --git a/sale_quotation_number/readme/DESCRIPTION.md b/sale_quotation_number/readme/DESCRIPTION.md new file mode 100644 index 00000000000..9d1aa5d5456 --- /dev/null +++ b/sale_quotation_number/readme/DESCRIPTION.md @@ -0,0 +1,48 @@ +- Sale Quotation: + - Sale process in draft stage just informing prices and element of + communication. +- Sale Order: + - Sale process confirmed, the customer already have a compromise with + us in terms of pay an invoice and receive our product or service. + +Originally Odoo manage only 1 sequence for this 2 documents, then the +sales order won and lost manage the same sequence losing almost all lost +quotations in terms of sequences, making so difficult understand with a +quick view if we are good or bad in terms of logistic and sale process +already confirmed. + +**Technical Explanation** + +When you create a quotation, it is numbered using the 'sale.quotation' +sequence. When you confirm a quotation, its orginal number is saved in +the 'origin' field and the sale order gets a new number, retrieving it +from 'sale.order' sequence. + +- With Odoo Base: + + > Sale Quotation 1 Number = SO001 + > + > Sale Quotation 2 Number = SO002 + > + > Sale Quotation 3 Number = SO003 + > + > Sale Quotation 4 Number = SO004 + +- With Odoo + This Module: + + > Sale Quotation 1 Number = SQ001 + > + > Sale Quotation 2 Number = SQ002 + > + > Sale Quotation 3 Number = SQ003 + > + > Sale Quotation 4 Number = SQ004 + > + > Sale Quotation 2 Confirmed = Number for Sale Order SO001 from Sale + > Quotation SQ002 + > + > Sale Quotation 1 Confirmed = Number for Sale Order SO002 from Sale + > Quotation SQ001 + > + > Sale Quotation 4 Confirmed = Number for Sale Order SO003 from Sale + > Quotation SQ004 diff --git a/sale_quotation_number/static/description/icon.png b/sale_quotation_number/static/description/icon.png new file mode 100755 index 00000000000..3a0328b516c Binary files /dev/null and b/sale_quotation_number/static/description/icon.png differ diff --git a/sale_quotation_number/static/description/index.html b/sale_quotation_number/static/description/index.html new file mode 100644 index 00000000000..3fb57cabfb5 --- /dev/null +++ b/sale_quotation_number/static/description/index.html @@ -0,0 +1,492 @@ + + + + + +Sale Quotation Numeration + + + +
+

Sale Quotation Numeration

+ + +

Beta License: AGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runboat

+
    +
  • Sale Quotation:
      +
    • Sale process in draft stage just informing prices and element of +communication.
    • +
    +
  • +
  • Sale Order:
      +
    • Sale process confirmed, the customer already have a compromise +with us in terms of pay an invoice and receive our product or +service.
    • +
    +
  • +
+

Originally Odoo manage only 1 sequence for this 2 documents, then the +sales order won and lost manage the same sequence losing almost all lost +quotations in terms of sequences, making so difficult understand with a +quick view if we are good or bad in terms of logistic and sale process +already confirmed.

+

Technical Explanation

+

When you create a quotation, it is numbered using the ‘sale.quotation’ +sequence. When you confirm a quotation, its orginal number is saved in +the ‘origin’ field and the sale order gets a new number, retrieving it +from ‘sale.order’ sequence.

+
    +
  • With Odoo Base:

    +
    +

    Sale Quotation 1 Number = SO001

    +

    Sale Quotation 2 Number = SO002

    +

    Sale Quotation 3 Number = SO003

    +

    Sale Quotation 4 Number = SO004

    +
    +
  • +
  • With Odoo + This Module:

    +
    +

    Sale Quotation 1 Number = SQ001

    +

    Sale Quotation 2 Number = SQ002

    +

    Sale Quotation 3 Number = SQ003

    +

    Sale Quotation 4 Number = SQ004

    +

    Sale Quotation 2 Confirmed = Number for Sale Order SO001 from Sale +Quotation SQ002

    +

    Sale Quotation 1 Confirmed = Number for Sale Order SO002 from Sale +Quotation SQ001

    +

    Sale Quotation 4 Confirmed = Number for Sale Order SO003 from Sale +Quotation SQ004

    +
    +
  • +
+

Table of contents

+ +
+

Configuration

+

To configure this module you need to go to Sales -> Configuration and +uncheck ‘Use same enumeration for quotations and 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

+
    +
  • Elico Corp
  • +
  • Agile Business Group
  • +
  • Qubiq
  • +
+
+
+

Contributors

+ +
+
+

Other credits

+
    +
  • Odoo Community Association: +Icon.
  • +
+
+
+

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.

+

This module is part of the OCA/sale-workflow project on GitHub.

+

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

+
+
+
+ + diff --git a/sale_quotation_number/tests/__init__.py b/sale_quotation_number/tests/__init__.py new file mode 100644 index 00000000000..87308782dcf --- /dev/null +++ b/sale_quotation_number/tests/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from . import test_sale_order diff --git a/sale_quotation_number/tests/test_sale_order.py b/sale_quotation_number/tests/test_sale_order.py new file mode 100644 index 00000000000..730b8115f0c --- /dev/null +++ b/sale_quotation_number/tests/test_sale_order.py @@ -0,0 +1,108 @@ +# Copyright 2018 Simone Rubino - Agile Business Group +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo.exceptions import UserError +from odoo.tests.common import TransactionCase + + +class TestSaleOrder(TransactionCase): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.env = cls.env(context=dict(cls.env.context, tracking_disable=True)) + cls.sale_order_model = cls.env["sale.order"] + company = cls.env.company + company.keep_name_so = False + cls.company1 = cls.env["res.company"].create( + {"name": "Test Company 1", "keep_name_so": False} + ) + cls.partner = cls.env["res.partner"].create({"name": "Test Partner"}) + cls.order_company1 = cls.env["sale.order"].create( + { + "name": "SQ/2023/001", + "partner_id": cls.partner.id, + "company_id": cls.company1.id, + } + ) + + def test_enumeration(self): + order1 = self.sale_order_model.create( + {"partner_id": self.env.ref("base.res_partner_1").id} + ) + quotation1_name = order1.name + order2 = self.sale_order_model.create( + {"partner_id": self.env.ref("base.res_partner_1").id} + ) + quotation2_name = order2.name + + self.assertRegex(quotation1_name, "SQ") + self.assertRegex(quotation2_name, "SQ") + self.assertLess(int(quotation1_name[2:]), int(quotation2_name[2:])) + + order2.action_confirm() + order1.action_confirm() + + self.assertRegex(order1.name, "S") + self.assertEqual(order1.origin, quotation1_name) + + self.assertRegex(order2.name, "S") + self.assertEqual(order2.origin, quotation2_name) + self.assertLess(int(order2.name[1:]), int(order1.name[1:])) + + def test_with_origin(self): + origin = "origin" + order1 = self.sale_order_model.create( + {"origin": origin, "partner_id": self.env.ref("base.res_partner_1").id} + ) + quotation1_name = order1.name + order1.action_confirm() + + self.assertRegex(order1.name, "S") + self.assertEqual(order1.origin, ", ".join([origin, quotation1_name])) + + def test_copy_no_origin(self): + order1 = self.sale_order_model.create( + {"partner_id": self.env.ref("base.res_partner_1").id} + ) + order_copy = order1.copy() + + self.assertEqual(order1.name, order_copy.origin) + + def test_copy_with_origin(self): + origin = "origin" + order1 = self.sale_order_model.create( + {"origin": origin, "partner_id": self.env.ref("base.res_partner_1").id} + ) + order_copy = order1.copy() + + self.assertEqual(", ".join([origin, order1.name]), order_copy.origin) + + def test_error_confirmation_sequence(self): + order = self.sale_order_model.create( + {"partner_id": self.env.ref("base.res_partner_1").id, "state": "sale"} + ) + # An exception is forced + sequence_id = self.env["ir.sequence"].search( + [ + ("code", "=", "sale.order"), + ("company_id", "in", [order.company_id.id, False]), + ] + ) + next_name = sequence_id.get_next_char(sequence_id.number_next_actual) + with self.assertRaises(UserError): + order.action_confirm() + order.update({"state": "draft"}) + # Now the SQ can be confirmed + order.action_confirm() + self.assertEqual(next_name, order.name) + + def test_sequence_assignment(self): + sequence_id = self.env["ir.sequence"].search( + [ + ("code", "=", "sale.order"), + ("company_id", "in", [self.order_company1.company_id.id, False]), + ] + ) + next_name = sequence_id.get_next_char(sequence_id.number_next_actual) + self.order_company1.action_confirm() + self.assertEqual(next_name, self.order_company1.name) diff --git a/sale_quotation_number/views/sales_config.xml b/sale_quotation_number/views/sales_config.xml new file mode 100644 index 00000000000..42da8d26b86 --- /dev/null +++ b/sale_quotation_number/views/sales_config.xml @@ -0,0 +1,22 @@ + + + + + Quotation number configuration + res.config.settings + + + + + + +
+ If this is unchecked, quotations use a different sequence from sale orders +
+
+
+
+
+
+