diff --git a/mrp_mto_with_stock/README.rst b/mrp_mto_with_stock/README.rst new file mode 100644 index 000000000..4a1aec0cd --- /dev/null +++ b/mrp_mto_with_stock/README.rst @@ -0,0 +1,114 @@ +================== +MRP MTO with Stock +================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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%2Fmanufacture-lightgray.png?logo=github + :target: https://github.com/OCA/manufacture/tree/12.0/mrp_mto_with_stock + :alt: OCA/manufacture +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/manufacture-12-0/manufacture-12-0-mrp_mto_with_stock + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/129/12.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module extends the functionality of Manufacturing to support the creation +of procurements only for a part of the raw material. +It has 2 modes. The default one allow you to pull +from stock until the quantity on hand is zero, and then create a procurement +to fulfill the MO requirements. In this mode, the created procurements must +be the ones fulfilling the MO that has generated it. +The other mode is based on the forecast quantity. It will allow to pull from +stock until the forecast quantity is zero and then create a procurement for +the missing products. In this mode, there is no link between the procurement +created and MO that has generated it. The procurement may be used to fulfill +another MO. + +**Table of contents** + +.. contents:: + :local: + +Configuration +============= + +To configure this module, you need to: + +#. Go to the products you want to follow this behaviour. +#. In the view form go to the tab *Inventory* and set the *Manufacturing + MTO/MTS Locations*. Any other location not specified here will have the + standard behavior. + +If you want to use the second mode, based on forecast quantity + +#. Go to the warehouse you want to follow this behaviour. +#. In the view form go to the tab *Warehouse Configuration* and set the + *MRP MTO with forecast stock*. You still need to configure the products + like described in last step. + +Usage +===== + +To use this module, you need to: + +#. Go to *Manufacturing* and create a Manufacturing Order. +#. Click on *Check availability*. + +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 smashing it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* John Walsh +* Eficent + +Contributors +~~~~~~~~~~~~ + +* John Walsh +* Lois Rilo +* Florian da Costa +* Bhavesh Odedra +* Isaac Gallart +* Sergio Corato + +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/manufacture `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/mrp_mto_with_stock/__init__.py b/mrp_mto_with_stock/__init__.py new file mode 100644 index 000000000..69f7babdf --- /dev/null +++ b/mrp_mto_with_stock/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import models diff --git a/mrp_mto_with_stock/__manifest__.py b/mrp_mto_with_stock/__manifest__.py new file mode 100644 index 000000000..65f21b9fc --- /dev/null +++ b/mrp_mto_with_stock/__manifest__.py @@ -0,0 +1,28 @@ +# Copyright 2019 Sergio Corato +# Copyright 2017 Eficent Business and IT Consulting Services S.L. +# Copyright 2015 John Walsh +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + "name": "MRP MTO with Stock", + "summary": "Fix Manufacturing orders to pull from stock until qty is " + "zero, and then create a procurement for them.", + "author": "John Walsh, Eficent, Odoo Community Association (OCA)", + "maintainer": "sergiocorato", + "website": "https://odoo-community.org/", + "category": "Manufacturing", + "version": "12.0.1.0.0", + "license": "AGPL-3", + "application": False, + "installable": True, + "depends": [ + "stock", + "mrp", + "stock_available_unreserved", + ], + "data": [ + 'views/product_template_view.xml', + 'views/stock_warehouse.xml', + ], + "demo": ['demo/product.xml'], +} diff --git a/mrp_mto_with_stock/demo/product.xml b/mrp_mto_with_stock/demo/product.xml new file mode 100644 index 000000000..c51e07970 --- /dev/null +++ b/mrp_mto_with_stock/demo/product.xml @@ -0,0 +1,123 @@ + + + + + + TOP + + 600.00 + 400.00 + product + + + TODO + MANUF + + + + + Subproduct 1 + + 300.00 + 100.00 + product + + + TODO + MANUF 1-1 + + + + + + Subproduct 2 + + 100.00 + 30.00 + product + + + TODO + MANUF 1-2 + + + + + + Subproduct 1-1 + + 10.00 + 3.00 + product + + + TODO + MANUF 1-1-1 + + + + Subproduct 2-1 + + 10.00 + 3.00 + product + + + TODO + MANUF 1-2-1 + + + + + + 10 + + + + + 5 + + 1 + + + + + + 2 + + 1 + + + + + + + 10 + + + + + 2 + + 1 + + + + + + + 10 + + + + + 4 + + 1 + + + diff --git a/mrp_mto_with_stock/i18n/ca.po b/mrp_mto_with_stock/i18n/ca.po new file mode 100644 index 000000000..787b83a59 --- /dev/null +++ b/mrp_mto_with_stock/i18n/ca.po @@ -0,0 +1,106 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/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" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Plantilla del producte" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/de.po b/mrp_mto_with_stock/i18n/de.po new file mode 100644 index 000000000..c5bdaf471 --- /dev/null +++ b/mrp_mto_with_stock/i18n/de.po @@ -0,0 +1,114 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2018-12-13 11:58+0000\n" +"Last-Translator: Maria Sparenberg \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" +"X-Generator: Weblate 3.3\n" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "Fertigung: MTO mit Bestandsvorhersage" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "Lagerorte für die Fertigung MTO/MTS" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "Fertigungsauftrag" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Produktvorlage" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "Teilprodukt 1" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "Teilprodukt 1-1" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "Teilprodukt 2" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "Teilprodukt 2-1" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "TODO" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "Oben" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" +"Diese Lagerorte für die Fertigung werden Beschaffungen auslösen, wenn kein " +"Bestand im Quelllager vorhanden ist." + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "Lager" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" +"Wenn Sie \"Fertigung: MTO mit Bestandsvorhersage\" verwenden, basieren die " +"ausgelösten Beschaffungen standardmäßig auf reservierbaren Bestand. " +"Aktivieren Sie diese Option, wenn es auf Bestandsvorhersagen basieren soll. " +"In diesem Fall werden die ausgelösten Beschaffungen nicht mit " +"Lagerbewegungen des Rohmaterials verlinkt" diff --git a/mrp_mto_with_stock/i18n/es.po b/mrp_mto_with_stock/i18n/es.po new file mode 100644 index 000000000..e986a5e5a --- /dev/null +++ b/mrp_mto_with_stock/i18n/es.po @@ -0,0 +1,106 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\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" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "Órden de producción" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Plantilla de producto" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/es_MX.po b/mrp_mto_with_stock/i18n/es_MX.po new file mode 100644 index 000000000..11b525ce3 --- /dev/null +++ b/mrp_mto_with_stock/i18n/es_MX.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (Mexico) (https://www.transifex.com/oca/teams/23907/" +"es_MX/)\n" +"Language: es_MX\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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Plantilla del producto" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/fi.po b/mrp_mto_with_stock/i18n/fi.po new file mode 100644 index 000000000..93d03c8b7 --- /dev/null +++ b/mrp_mto_with_stock/i18n/fi.po @@ -0,0 +1,106 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Finnish (https://www.transifex.com/oca/teams/23907/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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Tuotteen malli" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/fr.po b/mrp_mto_with_stock/i18n/fr.po new file mode 100644 index 000000000..57402938e --- /dev/null +++ b/mrp_mto_with_stock/i18n/fr.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# Quentin THEURET , 2017 +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\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" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "Ordre de fabrication" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Modèle d'article" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/fr_CH.po b/mrp_mto_with_stock/i18n/fr_CH.po new file mode 100644 index 000000000..d518de4b3 --- /dev/null +++ b/mrp_mto_with_stock/i18n/fr_CH.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: French (Switzerland) (https://www.transifex.com/oca/" +"teams/23907/fr_CH/)\n" +"Language: fr_CH\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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Template de produit" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/hr.po b/mrp_mto_with_stock/i18n/hr.po new file mode 100644 index 000000000..3905f1840 --- /dev/null +++ b/mrp_mto_with_stock/i18n/hr.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Predložak proizvoda" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/hr_HR.po b/mrp_mto_with_stock/i18n/hr_HR.po new file mode 100644 index 000000000..f39cfd669 --- /dev/null +++ b/mrp_mto_with_stock/i18n/hr_HR.po @@ -0,0 +1,108 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# Bole , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: Bole , 2017\n" +"Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/" +"hr_HR/)\n" +"Language: hr_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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "Proizvodni nalog" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/it.po b/mrp_mto_with_stock/i18n/it.po new file mode 100644 index 000000000..69ac89263 --- /dev/null +++ b/mrp_mto_with_stock/i18n/it.po @@ -0,0 +1,106 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\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" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Template prodotto" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/lt.po b/mrp_mto_with_stock/i18n/lt.po new file mode 100644 index 000000000..e07fd798a --- /dev/null +++ b/mrp_mto_with_stock/i18n/lt.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# Viktoras Norkus , 2018 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2018-01-16 08:02+0000\n" +"PO-Revision-Date: 2018-01-16 08:02+0000\n" +"Last-Translator: Viktoras Norkus , 2018\n" +"Language-Team: Lithuanian (https://www.transifex.com/oca/teams/23907/lt/)\n" +"Language: lt\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" +"%100<10 || n%100>=20) ? 1 : 2);\n" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "Gamybos užsakymas" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "Padaryti" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/mrp_mto_with_stock.pot b/mrp_mto_with_stock/i18n/mrp_mto_with_stock.pot new file mode 100644 index 000000000..8ad377dee --- /dev/null +++ b/mrp_mto_with_stock/i18n/mrp_mto_with_stock.pot @@ -0,0 +1,96 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 11.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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "These manufacturing locations will create procurements when there is no stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "When you use Mrp_mto_with_stock, the procurement creation is based on reservable stock by default. Check this option if you prefer base it on the forecast stock. In this case, the created procurements won't be linked to the raw material moves" +msgstr "" + diff --git a/mrp_mto_with_stock/i18n/nl_NL.po b/mrp_mto_with_stock/i18n/nl_NL.po new file mode 100644 index 000000000..0fcc3f4d7 --- /dev/null +++ b/mrp_mto_with_stock/i18n/nl_NL.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# Peter Hageman , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: Peter Hageman , 2017\n" +"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/" +"teams/23907/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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "Productieorder" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/pt_BR.po b/mrp_mto_with_stock/i18n/pt_BR.po new file mode 100644 index 000000000..d6f0e552e --- /dev/null +++ b/mrp_mto_with_stock/i18n/pt_BR.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/" +"teams/23907/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" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "Ordem de fabricação" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Produto Modelo" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/ro.po b/mrp_mto_with_stock/i18n/ro.po new file mode 100644 index 000000000..6fde2dde7 --- /dev/null +++ b/mrp_mto_with_stock/i18n/ro.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Romanian (https://www.transifex.com/oca/teams/23907/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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Produs șablon" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/sl.po b/mrp_mto_with_stock/i18n/sl.po new file mode 100644 index 000000000..a815f6a0f --- /dev/null +++ b/mrp_mto_with_stock/i18n/sl.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Predloga proizvoda" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/tr_TR.po b/mrp_mto_with_stock/i18n/tr_TR.po new file mode 100644 index 000000000..b33a1dca6 --- /dev/null +++ b/mrp_mto_with_stock/i18n/tr_TR.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Turkish (Turkey) (https://www.transifex.com/oca/teams/23907/" +"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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Ürün şablonu" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/vi_VN.po b/mrp_mto_with_stock/i18n/vi_VN.po new file mode 100644 index 000000000..6e15c09db --- /dev/null +++ b/mrp_mto_with_stock/i18n/vi_VN.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Vietnamese (Viet Nam) (https://www.transifex.com/oca/" +"teams/23907/vi_VN/)\n" +"Language: vi_VN\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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "Mẫu sản phẩm" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/i18n/zh_CN.po b/mrp_mto_with_stock/i18n/zh_CN.po new file mode 100644 index 000000000..83d72cb28 --- /dev/null +++ b/mrp_mto_with_stock/i18n/zh_CN.po @@ -0,0 +1,107 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mrp_mto_with_stock +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-28 03:44+0000\n" +"PO-Revision-Date: 2017-11-28 03:44+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Chinese (China) (https://www.transifex.com/oca/teams/23907/" +"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: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "MRP MTO with forecast stock" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,field_description:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "Manufacturing MTO/MTS Locations" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_mrp_production +msgid "Manufacturing Order" +msgstr "制造订单" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_product_template +msgid "Product Template" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +msgid "Subproduct 1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +msgid "Subproduct 1-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +msgid "Subproduct 2" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +msgid "Subproduct 2-1" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_1_1 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2 +#: model:product.product,description:mrp_mto_with_stock.product_product_manufacture_1_2_1 +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_1_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_2_product_template +#: model:product.template,description:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TODO" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:product.product,name:mrp_mto_with_stock.product_product_manufacture_1 +#: model:product.template,name:mrp_mto_with_stock.product_product_manufacture_1_product_template +msgid "TOP" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_product_mrp_mts_mto_location_ids +#: model:ir.model.fields,help:mrp_mto_with_stock.field_product_template_mrp_mts_mto_location_ids +msgid "" +"These manufacturing locations will create procurements when there is no " +"stock availale in the source location." +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model,name:mrp_mto_with_stock.model_stock_warehouse +msgid "Warehouse" +msgstr "" + +#. module: mrp_mto_with_stock +#: model:ir.model.fields,help:mrp_mto_with_stock.field_stock_warehouse_mrp_mto_mts_forecast_qty +msgid "" +"When you use Mrp_mto_with_stock, the procurement creation is based on " +"reservable stock by default. Check this option if you prefer base it on the " +"forecast stock. In this case, the created procurements won't be linked to " +"the raw material moves" +msgstr "" diff --git a/mrp_mto_with_stock/models/__init__.py b/mrp_mto_with_stock/models/__init__.py new file mode 100644 index 000000000..6a98762c4 --- /dev/null +++ b/mrp_mto_with_stock/models/__init__.py @@ -0,0 +1,5 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import mrp_production +from . import product_template +from . import stock_warehouse diff --git a/mrp_mto_with_stock/models/mrp_production.py b/mrp_mto_with_stock/models/mrp_production.py new file mode 100644 index 000000000..1fbe4f70b --- /dev/null +++ b/mrp_mto_with_stock/models/mrp_production.py @@ -0,0 +1,139 @@ +# Copyright 2017-18 Eficent Business and IT Consulting Services S.L. +# Copyright 2015 John Walsh +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, models +from odoo.exceptions import UserError +from odoo.tools import float_compare +import copy + + +class MrpProduction(models.Model): + _inherit = 'mrp.production' + + def _mto_with_stock_condition(self, move): + """Extensibility-enhancer method for modifying the scenarios when + MTO/MTS method should apply.""" + return move.location_id in move.product_id.mrp_mts_mto_location_ids + + @api.multi + def action_assign(self): + """Reserves available products to the production order but also creates + procurements for more items if we cannot reserve enough (MTO with + stock). + @returns True""" + # reserve all that is available (standard behaviour): + res = super(MrpProduction, self).action_assign() + # try to create procurements: + move_obj = self.env['stock.move'] + precision = self.env['decimal.precision'].precision_get( + 'Product Unit of Measure') + for production in self: + warehouse = production.location_src_id.get_warehouse() + mto_with_no_move_dest_id = warehouse.mrp_mto_mts_forecast_qty + move_ids = copy.copy(production.move_raw_ids.ids) + for move in move_obj.browse(move_ids): + new_move = False + qty_to_procure = 0.0 + if move.state in ('partially_available', 'confirmed') \ + and move.procure_method == 'make_to_stock' \ + and mto_with_no_move_dest_id and \ + self._mto_with_stock_condition(move): + qty_to_procure = production.get_mto_qty_to_procure(move) + if float_compare( + qty_to_procure, 0, precision_digits=precision) > 0: + new_move = move + else: + continue + if new_move: + production.run_procurement(new_move, qty_to_procure, + mto_with_no_move_dest_id) + return res + + @api.multi + def _adjust_procure_method(self): + """When configured as MTO/MTS manufacturing location, if there is + stock available unreserved, use it and procure the remaining.""" + res = super()._adjust_procure_method() + warehouse = self.location_src_id.get_warehouse() + mto_with_no_move_dest_id = warehouse.mrp_mto_mts_forecast_qty + precision = self.env['decimal.precision'].precision_get( + 'Product Unit of Measure') + for move in self.move_raw_ids: + if not self._mto_with_stock_condition(move): + continue + if not mto_with_no_move_dest_id: + # We have to split the move because we can't have + # a part of the move that have ancestors and not the + # other else it won't ever be reserved. + qty_to_procure = min( + move.product_uom_qty - + move.product_id.qty_available_not_res, + move.product_uom_qty) + if qty_to_procure > 0.0 and float_compare( + qty_to_procure, move.product_uom_qty, + precision_digits=precision + ) < 0: + # we need to adjust the unit_factor of the stock moves + # to split correctly the load of each one. + ratio = qty_to_procure / move.product_uom_qty + # create new move for make to order part + move.copy({ + 'product_uom_qty': qty_to_procure, + 'procure_method': 'make_to_order', + 'unit_factor': move.unit_factor * ratio, + }) + move.write({ + 'product_uom_qty': + move.product_uom_qty - qty_to_procure, + 'unit_factor': move.unit_factor * (1 - ratio), + }) + move._action_confirm() + move._action_assign() + return res + + @api.multi + def run_procurement(self, move, qty, mto_with_no_move_dest_id): + self.ensure_one() + errors = [] + values = move._prepare_procurement_values() + # In that mode, we don't want any link between the raw material move + # And the previous move generated now. + if mto_with_no_move_dest_id: + values.pop('move_dest_ids', None) + origin = self.origin or move.origin + values['route_ids'] = move.product_id.route_ids + try: + self.env['procurement.group'].run( + move.product_id, + qty, + move.product_uom, + move.location_id, + origin, + origin, + values + ) + except UserError as error: + errors.append(error.name) + if errors: + raise UserError('\n'.join(errors)) + return True + + @api.multi + def get_mto_qty_to_procure(self, move): + self.ensure_one() + precision = self.env['decimal.precision'].precision_get( + 'Product Unit of Measure') + stock_location_id = move.location_id.id + move_location = move.with_context(location=stock_location_id) + virtual_available = move_location.product_id.virtual_available + qty_available = move.product_id.uom_id._compute_quantity( + virtual_available, move.product_uom) + if float_compare(qty_available, 0, precision_digits=precision) >= 0: + return 0.0 + else: + if float_compare( + abs(qty_available), move.product_uom_qty, + precision_digits=precision) < 0: + return abs(qty_available) + return move.product_uom_qty diff --git a/mrp_mto_with_stock/models/product_template.py b/mrp_mto_with_stock/models/product_template.py new file mode 100644 index 000000000..6e8624dea --- /dev/null +++ b/mrp_mto_with_stock/models/product_template.py @@ -0,0 +1,14 @@ +# Copyright 2017 Eficent Business and IT Consulting Services S.L. +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class ProductTemplate(models.Model): + _inherit = 'product.template' + + mrp_mts_mto_location_ids = fields.Many2many( + comodel_name='stock.location', + string='Manufacturing MTO/MTS Locations', + help='These manufacturing locations will create procurements when ' + 'there is no stock availale in the source location.') diff --git a/mrp_mto_with_stock/models/stock_warehouse.py b/mrp_mto_with_stock/models/stock_warehouse.py new file mode 100644 index 000000000..2e2fe213c --- /dev/null +++ b/mrp_mto_with_stock/models/stock_warehouse.py @@ -0,0 +1,15 @@ +# Copyright 2017 Akretion +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class StockWarehouse(models.Model): + _inherit = 'stock.warehouse' + + mrp_mto_mts_forecast_qty = fields.Boolean( + string="MRP MTO with forecast stock", + help="When you use Mrp_mto_with_stock, the procurement creation is " + "based on reservable stock by default. Check this option if " + "you prefer base it on the forecast stock. In this case, the " + "created procurements won't be linked to the raw material moves") diff --git a/mrp_mto_with_stock/readme/CONFIGURE.rst b/mrp_mto_with_stock/readme/CONFIGURE.rst new file mode 100644 index 000000000..2d20ead18 --- /dev/null +++ b/mrp_mto_with_stock/readme/CONFIGURE.rst @@ -0,0 +1,13 @@ +To configure this module, you need to: + +#. Go to the products you want to follow this behaviour. +#. In the view form go to the tab *Inventory* and set the *Manufacturing + MTO/MTS Locations*. Any other location not specified here will have the + standard behavior. + +If you want to use the second mode, based on forecast quantity + +#. Go to the warehouse you want to follow this behaviour. +#. In the view form go to the tab *Warehouse Configuration* and set the + *MRP MTO with forecast stock*. You still need to configure the products + like described in last step. diff --git a/mrp_mto_with_stock/readme/CONTRIBUTORS.rst b/mrp_mto_with_stock/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..0b1c351fa --- /dev/null +++ b/mrp_mto_with_stock/readme/CONTRIBUTORS.rst @@ -0,0 +1,6 @@ +* John Walsh +* Lois Rilo +* Florian da Costa +* Bhavesh Odedra +* Isaac Gallart +* Sergio Corato diff --git a/mrp_mto_with_stock/readme/DESCRIPTION.rst b/mrp_mto_with_stock/readme/DESCRIPTION.rst new file mode 100644 index 000000000..7d515ac7c --- /dev/null +++ b/mrp_mto_with_stock/readme/DESCRIPTION.rst @@ -0,0 +1,11 @@ +This module extends the functionality of Manufacturing to support the creation +of procurements only for a part of the raw material. +It has 2 modes. The default one allow you to pull +from stock until the quantity on hand is zero, and then create a procurement +to fulfill the MO requirements. In this mode, the created procurements must +be the ones fulfilling the MO that has generated it. +The other mode is based on the forecast quantity. It will allow to pull from +stock until the forecast quantity is zero and then create a procurement for +the missing products. In this mode, there is no link between the procurement +created and MO that has generated it. The procurement may be used to fulfill +another MO. \ No newline at end of file diff --git a/mrp_mto_with_stock/readme/USAGE.rst b/mrp_mto_with_stock/readme/USAGE.rst new file mode 100644 index 000000000..bdd99773f --- /dev/null +++ b/mrp_mto_with_stock/readme/USAGE.rst @@ -0,0 +1,4 @@ +To use this module, you need to: + +#. Go to *Manufacturing* and create a Manufacturing Order. +#. Click on *Check availability*. diff --git a/mrp_mto_with_stock/static/description/icon.png b/mrp_mto_with_stock/static/description/icon.png new file mode 100644 index 000000000..3a0328b51 Binary files /dev/null and b/mrp_mto_with_stock/static/description/icon.png differ diff --git a/mrp_mto_with_stock/static/description/index.html b/mrp_mto_with_stock/static/description/index.html new file mode 100644 index 000000000..cece78a11 --- /dev/null +++ b/mrp_mto_with_stock/static/description/index.html @@ -0,0 +1,462 @@ + + + + + + +MRP MTO with Stock + + + +
+

MRP MTO with Stock

+ + +

Beta License: AGPL-3 OCA/manufacture Translate me on Weblate Try me on Runbot

+

This module extends the functionality of Manufacturing to support the creation +of procurements only for a part of the raw material. +It has 2 modes. The default one allow you to pull +from stock until the quantity on hand is zero, and then create a procurement +to fulfill the MO requirements. In this mode, the created procurements must +be the ones fulfilling the MO that has generated it. +The other mode is based on the forecast quantity. It will allow to pull from +stock until the forecast quantity is zero and then create a procurement for +the missing products. In this mode, there is no link between the procurement +created and MO that has generated it. The procurement may be used to fulfill +another MO.

+

Table of contents

+ +
+

Configuration

+

To configure this module, you need to:

+
    +
  1. Go to the products you want to follow this behaviour.
  2. +
  3. In the view form go to the tab Inventory and set the Manufacturing +MTO/MTS Locations. Any other location not specified here will have the +standard behavior.
  4. +
+

If you want to use the second mode, based on forecast quantity

+
    +
  1. Go to the warehouse you want to follow this behaviour.
  2. +
  3. In the view form go to the tab Warehouse Configuration and set the +MRP MTO with forecast stock. You still need to configure the products +like described in last step.
  4. +
+
+
+

Usage

+

To use this module, you need to:

+
    +
  1. Go to Manufacturing and create a Manufacturing Order.
  2. +
  3. Click on Check availability.
  4. +
+
+
+

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 smashing it by providing a detailed and welcomed +feedback.

+

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

+
+
+

Credits

+
+

Authors

+
    +
  • John Walsh
  • +
  • Eficent
  • +
+
+ +
+

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/manufacture project on GitHub.

+

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

+
+
+
+ + diff --git a/mrp_mto_with_stock/tests/__init__.py b/mrp_mto_with_stock/tests/__init__.py new file mode 100644 index 000000000..575f33c58 --- /dev/null +++ b/mrp_mto_with_stock/tests/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import test_mrp_mto_with_stock diff --git a/mrp_mto_with_stock/tests/test_mrp_mto_with_stock.py b/mrp_mto_with_stock/tests/test_mrp_mto_with_stock.py new file mode 100644 index 000000000..1bb12b233 --- /dev/null +++ b/mrp_mto_with_stock/tests/test_mrp_mto_with_stock.py @@ -0,0 +1,152 @@ +# Copyright 2017 Eficent Business and IT Consulting Services S.L. +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo.tests.common import TransactionCase + + +class TestMrpMtoWithStock(TransactionCase): + + def setUp(self, *args, **kwargs): + super(TestMrpMtoWithStock, self).setUp(*args, **kwargs) + self.production_model = self.env['mrp.production'] + self.procurement_model = self.env['procurement.group'] + self.bom_model = self.env['mrp.bom'] + self.stock_location_stock = self.env.ref('stock.stock_location_stock') + self.manufacture_route = self.env.ref( + 'mrp.route_warehouse0_manufacture') + self.uom_unit = self.env.ref('uom.product_uom_unit') + self.warehouse = self.env.ref('stock.warehouse0') + + self.top_product = self.env.ref( + 'mrp_mto_with_stock.product_product_manufacture_1') + self.subproduct1 = self.env.ref( + 'mrp_mto_with_stock.product_product_manufacture_1_1') + self.subproduct2 = self.env.ref( + 'mrp_mto_with_stock.product_product_manufacture_1_2') + self.subproduct_1_1 = self.env.ref( + 'mrp_mto_with_stock.product_product_manufacture_1_1_1') + + self.main_bom = self.env.ref( + 'mrp_mto_with_stock.mrp_bom_manuf_1') + + def _get_production_vals(self): + return { + 'product_id': self.top_product.id, + 'product_qty': 1, + 'product_uom_id': self.uom_unit.id, + 'bom_id': self.main_bom.id, + } + + def _update_product_qty(self, product, location, quantity): + """Update Product quantity.""" + product_qty = self.env['stock.change.product.qty'].create({ + 'location_id': location.id, + 'product_id': product.id, + 'new_quantity': quantity, + }) + product_qty.change_product_qty() + return product_qty + + def test_manufacture_with_forecast_stock(self): + """ + Test Manufacture mto with stock based on forecast quantity + and no link between sub assemblies MO's and Main MO raw material + """ + + self.warehouse.mrp_mto_mts_forecast_qty = True + + self._update_product_qty(self.subproduct1, self.stock_location_stock, 2) + self._update_product_qty(self.subproduct2, self.stock_location_stock, 4) + + self.production = self.production_model.create( + self._get_production_vals()) + + # Create MO and check it create sub assemblie MO. + self.production.action_assign() + + self.assertEqual(self.production.availability, 'partially_available') + self.assertEquals(self.subproduct1.virtual_available, 0) + production_sub1 = self.production_model.search( + [('origin', 'ilike', self.production.name)]) + self.assertEqual(production_sub1.state, 'confirmed') + self.assertEquals(len(production_sub1), 1) + self.assertEqual(production_sub1.product_qty, 3) + self._update_product_qty(self.subproduct1, self.stock_location_stock, 7) + + # Create second MO and check it does not create procurement + self.production2 = self.production_model.create( + self._get_production_vals()) + self.production2.action_assign() + p = self.production_model.search( + [('origin', 'ilike', self.production2.name)]) + self.assertEquals(len(p), 0) + self.assertEquals(self.production2.availability, 'assigned') + self.production2.do_unreserve() + self.assertEquals(self.subproduct1.virtual_available, 0) + + self.production.action_assign() + # We check if first MO is able to assign it self even if it has + # previously generate procurements, it would not be the case in the + # other mode (without mrp_mto_mts_reservable_stock on warehouse) + self.assertEquals(self.production.availability, 'assigned') + + self.assertEquals(self.subproduct1.virtual_available, 0) + + def test_manufacture_with_reservable_stock(self): + """ + Test Manufacture mto with stock based on reservable stock + and there is a link between sub assemblies MO's and Main MO raw + material + """ + + self._update_product_qty(self.subproduct1, self.stock_location_stock, 2) + self._update_product_qty(self.subproduct2, self.stock_location_stock, 4) + self._update_product_qty(self.subproduct_1_1, self.stock_location_stock, 50) + + self.production = self.production_model.create(self._get_production_vals()) + self.assertEqual(len(self.production.move_raw_ids), 3) + + # Create MO and check it create sub assemblie MO. + mo = self.production_model.search([('origin', 'ilike', self.production.name)]) + self.assertEqual(mo.product_qty, 3) + + mo.action_assign() + self.assertEqual(mo.availability, 'assigned') + produce_wizard = self.env['mrp.product.produce'].with_context({ + 'active_id': mo.id, + 'active_ids': [mo.id] + }).create({ + 'product_qty': mo.product_qty + }) + produce_wizard._onchange_product_qty() + produce_wizard.do_produce() + self.assertEqual(len(mo), 1) + mo.button_mark_done() + self.assertEqual(mo.availability, 'assigned') + self.assertEquals(self.subproduct1.qty_available, 5) + + self.production.action_assign() + self.assertEqual(self.production.state, 'confirmed') + + produce_wizard = self.env['mrp.product.produce'].with_context({ + 'active_id': self.production.id, + 'active_ids': [self.production.id] + }).create({ + 'product_qty': self.production.product_qty + }) + produce_wizard._onchange_product_qty() + produce_wizard.do_produce() + # Check that not extra moves were generated and qty's are ok: + self.assertEqual(len(self.production.move_raw_ids), 3) + for move in self.production.move_raw_ids: + if move.product_id == self.subproduct1 and \ + move.procure_method == 'make_to_order': + qty = 3.0 + else: + qty = 2.0 + self.assertEqual(move.quantity_done, qty) + + self.assertTrue(self.production.check_to_done) + self.production.button_mark_done() + self.assertEqual(self.production.state, 'done') + self.assertEquals(self.subproduct2.qty_available, 2) diff --git a/mrp_mto_with_stock/views/product_template_view.xml b/mrp_mto_with_stock/views/product_template_view.xml new file mode 100644 index 000000000..99d027ae0 --- /dev/null +++ b/mrp_mto_with_stock/views/product_template_view.xml @@ -0,0 +1,20 @@ + + + + + + + product.template.form - mrp_mto_with_stock + extension + product.template + + + + + + + + + diff --git a/mrp_mto_with_stock/views/stock_warehouse.xml b/mrp_mto_with_stock/views/stock_warehouse.xml new file mode 100644 index 000000000..a00edc05a --- /dev/null +++ b/mrp_mto_with_stock/views/stock_warehouse.xml @@ -0,0 +1,17 @@ + + + + + + + stock.warehouse + + + + + + + + + diff --git a/setup/mrp_mto_with_stock/odoo/addons/mrp_mto_with_stock b/setup/mrp_mto_with_stock/odoo/addons/mrp_mto_with_stock new file mode 120000 index 000000000..f10c8de86 --- /dev/null +++ b/setup/mrp_mto_with_stock/odoo/addons/mrp_mto_with_stock @@ -0,0 +1 @@ +../../../../mrp_mto_with_stock \ No newline at end of file diff --git a/setup/mrp_mto_with_stock/setup.py b/setup/mrp_mto_with_stock/setup.py new file mode 100644 index 000000000..28c57bb64 --- /dev/null +++ b/setup/mrp_mto_with_stock/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +)