diff --git a/__init__.py b/__init__.py new file mode 100644 index 0000000..2609681 --- /dev/null +++ b/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from . import models +from . import report diff --git a/__manifest__.py b/__manifest__.py new file mode 100644 index 0000000..07bcedb --- /dev/null +++ b/__manifest__.py @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + + +{ + 'name': 'Purchase and MRP Management', + 'version': '1.0', + 'category': 'Inventory/Purchase', + 'description': """ +This module provides facility to the user to install mrp and purchase modules at a time. +======================================================================================== + +It is basically used when we want to keep track of production orders generated +from purchase order. + """, + 'data': [ + 'views/mrp_bom_views.xml', + 'views/purchase_order_views.xml', + 'views/mrp_production_views.xml', + 'views/stock_orderpoint_views.xml', + 'security/ir.model.access.csv', + ], + 'demo': [ + 'data/purchase_mrp_demo.xml', + ], + 'depends': ['mrp', 'purchase_stock'], + 'installable': True, + 'auto_install': True, + 'assets': { + 'web.assets_backend': [ + 'mrp/static/src/**/*.js', + ], + }, + 'license': 'LGPL-3', +} diff --git a/data/purchase_mrp_demo.xml b/data/purchase_mrp_demo.xml new file mode 100644 index 0000000..70c9626 --- /dev/null +++ b/data/purchase_mrp_demo.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/i18n/ar.po b/i18n/ar.po new file mode 100644 index 0000000..2653d79 --- /dev/null +++ b/i18n/ar.po @@ -0,0 +1,138 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Arabic (https://app.transifex.com/odoo/teams/41243/ar/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ar\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "التصنيع " + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "المشتريات " + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "تقرير النظرة العامة لقائمة المواد " + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "قائمة المواد" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "بند قائمة المواد" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "يجب أن تكون حصة تكلفة المكونات موجبة أو مساوية للصفر. " + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "حصة التكلفة (%) " + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "عدد مصادر أوامر التصنيع " + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "عدد أوامر الشراء المنشأة " + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "عنصر اليومية" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "تقرير النظرة العامة على أمر التصنيع " + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "مصدر التصنيع لـ %s " + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"لم يتمكن أودو من إنشاء القيود الأنجلو ساكسونية. التقييم الإجمالي لـ %s هو " +"صفر. " + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "أمر الإنتاج" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "أمر شراء" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "بند أمر الشراء" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "أمر شراء تم إنشاؤه من %s " + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "حركة المخزون" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"نسبة تكلفة إعادة تقسيم المكوِّن عند شراء عدة. يجب أن يكون إجمالي تكلفة كافة " +"المكونات مساوياً لـ 100. " + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "لا يمكن أن يتخطى إجمالي حصة التكلفة للمكونات لقائمة المواد 100. " diff --git a/i18n/az.po b/i18n/az.po new file mode 100644 index 0000000..eddbe3b --- /dev/null +++ b/i18n/az.po @@ -0,0 +1,131 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Jumshud Sultanov , 2022 +# erpgo translator , 2022 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 15.5alpha1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2022-09-22 05:54+0000\n" +"Last-Translator: erpgo translator , 2022\n" +"Language-Team: Azerbaijani (https://app.transifex.com/odoo/teams/41243/az/)\n" +"Language: az\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Məhsul Resepti" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Məhsul Resepti siyahısı" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Jurnal Sətirləri" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "İstehsal Sifarişi" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Stokun Hərəkəti" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/bg.po b/i18n/bg.po new file mode 100644 index 0000000..6a0fd73 --- /dev/null +++ b/i18n/bg.po @@ -0,0 +1,138 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Igor Sheludko , 2023 +# Martin Trigaux, 2023 +# KeyVillage, 2023 +# Весел Карастоянов , 2023 +# Maria Boyadjieva , 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Maria Boyadjieva , 2023\n" +"Language-Team: Bulgarian (https://app.transifex.com/odoo/teams/41243/bg/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: bg\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Доставки" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Фактура за покупка на материали" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Ред на Списък с материали" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Счетоводна Операция" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Производствена поръчка" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Поръчка" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Ред на поръчка за покупка" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Движение в склада" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/bs.po b/i18n/bs.po new file mode 100644 index 0000000..91f0281 --- /dev/null +++ b/i18n/bs.po @@ -0,0 +1,129 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Martin Trigaux, 2018 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server saas~11.5\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2018-09-18 09:49+0000\n" +"Last-Translator: Martin Trigaux, 2018\n" +"Language-Team: Bosnian (https://www.transifex.com/odoo/teams/41243/bs/)\n" +"Language: bs\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Stavka nabavne narudžbe" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Kretanje zalihe" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/ca.po b/i18n/ca.po new file mode 100644 index 0000000..7b871b4 --- /dev/null +++ b/i18n/ca.po @@ -0,0 +1,143 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# CristianCruzParra, 2023 +# Ivan Espinola, 2023 +# Josep Anton Belchi, 2023 +# marcescu, 2023 +# Quim - eccit , 2023 +# Manel Fernandez Ramirez , 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Manel Fernandez Ramirez , 2023\n" +"Language-Team: Catalan (https://app.transifex.com/odoo/teams/41243/ca/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Fabricat" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Comprat" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Informe de visió general del LDM" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Llista de material" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Línia de Llista de Materials" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "El cost compartit dels components ha de ser positiu o igual a zero." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Cost compartit (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Recompte d'hores extres" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Comptador del PO generat" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Apunt comptable" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Ordre de producció %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo no és capaç de generar les entrades de saxons anglòfons. La valoració " +"total%s és zero" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Ordre de producció" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Comanda de compra" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Línia de la comanda de compra" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Ordre de compra generat a partir de %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Moviment d'estoc" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"El percentatge del cost de repartició del component quan es compra un kit.El" +" cost total de tots els components ha de ser igual a 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "La quota de cost total per a un component de BoM ha de ser 100" diff --git a/i18n/cs.po b/i18n/cs.po new file mode 100644 index 0000000..0562fd8 --- /dev/null +++ b/i18n/cs.po @@ -0,0 +1,137 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Ivana Bartonkova, 2023 +# Jakub Smolka, 2023 +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Czech (https://app.transifex.com/odoo/teams/41243/cs/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: cs\n" +"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Výroba" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Nákup" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Přehled kusovníku" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Kusovník" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Položka kusovníku" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Počet MO zdrojů" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Počet vygenerovaných PO" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Účetní položka" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Výkaz výrobních příkazů" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Výrobní zdroj %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo není schopen generovat anglosaské záznamy. Celkové ocenění %s je nula." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Výrobní příkaz" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Nákupní objednávka" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Položka nákupní objednávky" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Nákupní objednávka vygenerovaná z %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Pohyb zásob" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/da.po b/i18n/da.po new file mode 100644 index 0000000..2b7a1d8 --- /dev/null +++ b/i18n/da.po @@ -0,0 +1,136 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Martin Trigaux, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Martin Trigaux, 2023\n" +"Language-Team: Danish (https://app.transifex.com/odoo/teams/41243/da/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: da\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Produktion" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Indkøb" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Stykliste" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Stykliste linje" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Antal Produktionsordre Kilde" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Antal genereret Købsordre" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Journalpost" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Produktionskilde for %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo er ikke i stand til at generere anglesaksiske posteringer. Den totale " +"evaluering af %s er nul." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Produktionsordre" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Indkøbsordre" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Indkøbsordrelinie" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Købsordre genereret fra %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Lagerflytning" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/de.po b/i18n/de.po new file mode 100644 index 0000000..651a968 --- /dev/null +++ b/i18n/de.po @@ -0,0 +1,140 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: German (https://app.transifex.com/odoo/teams/41243/de/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Fertigung" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Einkäufe" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Stücklistenübersichtsbericht" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Stückliste" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Stücklistenposition" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Der Kostenanteil der Komponenten muss positiv oder gleich Null sein." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Kostenanteil (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Anzahl der FA-Referenzen" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Anzahl generierter Bestellungen" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Buchungszeile" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Übersichtsbericht der Fertigungsaufträge" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Fertigungsquelle von %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo ist nicht in der Lage, die angelsächsischen Einträge zu generieren. Die" +" Gesamtbewertung von %s ist Null." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Fertigungsauftrag" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Bestellung" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Bestellzeile" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Bestellung generiert aus %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Lagerbuchung" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Der prozentuale Anteil der Kosten für die Komponenten beim Kauf eines " +"Bausatzes, wobei die Gesamtkosten für alle Komponenten gleich 100 sein " +"müssen." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"Der Gesamtkostenanteil für die Komponenten einer Stückliste muss 100 sein." diff --git a/i18n/el.po b/i18n/el.po new file mode 100644 index 0000000..3360ef1 --- /dev/null +++ b/i18n/el.po @@ -0,0 +1,129 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Martin Trigaux, 2018 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server saas~11.5\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2018-09-18 09:49+0000\n" +"Last-Translator: Martin Trigaux, 2018\n" +"Language-Team: Greek (https://www.transifex.com/odoo/teams/41243/el/)\n" +"Language: el\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Γραμμή Παραγγελίας Αγοράς" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Κίνηση Αποθέματος" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/es.po b/i18n/es.po new file mode 100644 index 0000000..1e19e08 --- /dev/null +++ b/i18n/es.po @@ -0,0 +1,143 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# Larissa Manderfeld, 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Larissa Manderfeld, 2024\n" +"Language-Team: Spanish (https://app.transifex.com/odoo/teams/41243/es/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es\n" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Fabricación" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Compras" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Informe de resumen de LdM" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Lista de materiales" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Línea de Lista de Materiales" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" +"El coste compartido de los componentes tiene que ser positivo o igual a " +"cero." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Reparto de costes (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Cuenta de MO fuente" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Cuenta de órdenes de compra generadas" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Apunte contable" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Informe del resumen de la orden de fabricación" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Fuente de fabricación de %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo no puede generar los asientos anglosajones. La valuación total de %s es" +" cero." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Orden de producción" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Orden de compra" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Línea de orden de compra" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Pedido de compra generada a partir de %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Movimiento de existencias" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"El porcentaje del coste de repartición del componente cuando se compra un " +"kit. El total del coste de todos los componentes debe ser igual a 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"El total del reparto de costes para un componente de la lista de materiales " +"debe ser 100" diff --git a/i18n/es_419.po b/i18n/es_419.po new file mode 100644 index 0000000..48379ba --- /dev/null +++ b/i18n/es_419.po @@ -0,0 +1,143 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# Fernanda Alvarez, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Fernanda Alvarez, 2023\n" +"Language-Team: Spanish (Latin America) (https://app.transifex.com/odoo/teams/41243/es_419/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es_419\n" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Fabricación" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Compras" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Reporte de resumen de la lista de materiales" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Lista de materiales" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Línea de lista de materiales" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" +"El costo compartido de los componentes tiene que ser positivo o igual a " +"cero." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Reparto de costos (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Número de órdenes de fabricación fuente" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Número de órdenes de compra generadas" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Apunte contable" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Reporte del resumen de la orden de fabricación" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Fuente de fabricación de %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo no puede generar los asientos anglosajones. La valuación total de %s es" +" cero." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Orden de producción" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Orden de compra" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Línea de la orden de compra" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Orden de compra generada a partir de %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Movimiento de existencias" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"El porcentaje del costo de repartición del componente cuando se compra un " +"kit. El total del costo de todos los componentes debe ser igual a 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"El total del reparto de costos para un componente de la lista de materiales " +"debe ser 100" diff --git a/i18n/et.po b/i18n/et.po new file mode 100644 index 0000000..7db99e9 --- /dev/null +++ b/i18n/et.po @@ -0,0 +1,143 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Patrick-Jordan Kiudorv, 2023 +# Martin Trigaux, 2023 +# Eneli Õigus , 2023 +# Martin Aavastik , 2023 +# Piia Paurson , 2023 +# Triine Aavik , 2023 +# JanaAvalah, 2023 +# Mihkel avalah, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Mihkel avalah, 2023\n" +"Language-Team: Estonian (https://app.transifex.com/odoo/teams/41243/et/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: et\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Tootmine" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Ostud" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Retseptide ülevaatlik aruanne" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Retsept" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Retsepti rida" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Komponentide kuluosa peab olema positiivne või võrdne nulliga." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Kulude osakaal (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Tootmistellimuse algallikate arv" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Loodud ostutellimuste arv" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Andmiku kanderida" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Tootmistellimuse koondraport " + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Tootmise allikas %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "Odoo ei saa anglosaksi kirjeid genereerida. Kogu väärtus %s on null." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Tootmiskäsk" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Ostutellimus" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Ostutellimuse rida" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Ostutellimus on genereeritud %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Laoliikumine" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Komponentide ümberjaotamise maksumuse protsent komplekti ostmisel. Kõikide " +"komponentide maksumus kokku peab olema võrdne 100-ga." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "Retseptide komponendi kogukulu osa peab olema 100" diff --git a/i18n/fa.po b/i18n/fa.po new file mode 100644 index 0000000..b987ad7 --- /dev/null +++ b/i18n/fa.po @@ -0,0 +1,137 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Yousef Shadmanesh , 2023 +# Martin Trigaux, 2023 +# Hanna Kheradroosta, 2023 +# Hamed Mohammadi , 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Hamed Mohammadi , 2023\n" +"Language-Team: Persian (https://app.transifex.com/odoo/teams/41243/fa/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fa\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "تولید" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "خریدها" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "صورت مواد اولیه" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "سطر صورت مواد اولیه" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "سهم هزینه (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "تعداد منبع MO" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "تعداد PO ایجاد شده" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "آیتم دفترروزنامه" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "منبع تولید %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "Odoo قادر به تولید ورودی های آنگلوساکسون نیست. ارزش کل %s صفر است." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "سفارش تولید" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "سفارش خرید" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "سطر سفارش خرید" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "سفارش خرید از %s ایجاد شد" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "انتقال موجودی" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/fi.po b/i18n/fi.po new file mode 100644 index 0000000..515dc26 --- /dev/null +++ b/i18n/fi.po @@ -0,0 +1,144 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Kari Lindgren , 2023 +# Jarmo Kortetjärvi , 2023 +# Martin Trigaux, 2023 +# Jussi Lehto , 2023 +# Tuomo Aura , 2023 +# Ossi Mantylahti , 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Ossi Mantylahti , 2024\n" +"Language-Team: Finnish (https://app.transifex.com/odoo/teams/41243/fi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Valmistus" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Ostot" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Osaluettelon yleiskatsausraportti" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Osaluettelo" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Osaluettelon rivi" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Komponenttien kustannusosuuden on oltava positiivinen tai nolla." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Kustannusosuus (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Valmistustilauksien lähteen määrä" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Luotujen ostotilausten määrä" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Päiväkirjatapahtuma" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Tuotantotilauksen yleiskatsausraportti" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Valmistuksen lähde %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo ei pysty luomaan anglosaksisia merkintöjä. Kokonaisarvosana %s on " +"nolla." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Valmistustilaus" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Ostotilaus" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Ostotilausrivi" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Ostotilaus muodostettu lähteestä %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Varastosiirto" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Prosenttiosuus komponenttien jakokustannuksista, kun ostat paketin. Kaikkien" +" komponenttien kokonaiskustannusten on oltava yhtä suuret kuin 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"Osaluettelon komponenttien kokonaiskustannusten on oltava 100 prosenttia" diff --git a/i18n/fr.po b/i18n/fr.po new file mode 100644 index 0000000..bc41c2c --- /dev/null +++ b/i18n/fr.po @@ -0,0 +1,140 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: French (https://app.transifex.com/odoo/teams/41243/fr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fr\n" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Fabrication" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Achats" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Rapport de vue d'ensemble de la nomenclature" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Nomenclature" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Ligne de nomenclature" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Le partage des coûts des composants doit être positif ou égal à zéro." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Partage des coûts (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Nombre d'OF d'origine" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Nombre de bons de commande générés" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Écriture comptable" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Rapport de vue d'ensemble des ordres de fabrication" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Source de fabrication de %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo n'est pas capable de générer les écritures anglo-saxonnes. La " +"valorisation totale de %s est zéro" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Ordre de production" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Bon de commande fournisseur" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Ligne de bon de commande" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Bon de commande généré de %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Mouvement de stock" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Le pourcentage du coût de répartition du composant en achetant un kit. Le " +"total de tous les coûts des composants doit être égal à 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"Le coût de partage total pour les composants d'une nomenclature doit être " +"100." diff --git a/i18n/gu.po b/i18n/gu.po new file mode 100644 index 0000000..c603e80 --- /dev/null +++ b/i18n/gu.po @@ -0,0 +1,126 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server saas~11.5\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2018-08-24 09:05+0000\n" +"Language-Team: Gujarati (https://www.transifex.com/odoo/teams/41243/gu/)\n" +"Language: gu\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Journal Item" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/he.po b/i18n/he.po new file mode 100644 index 0000000..7d3ad15 --- /dev/null +++ b/i18n/he.po @@ -0,0 +1,140 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# ZVI BLONDER , 2023 +# NoaFarkash, 2023 +# Yihya Hugirat , 2023 +# דודי מלכה , 2023 +# Ha Ketem , 2023 +# Lilach Gilliam , 2023 +# yael terner, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: yael terner, 2023\n" +"Language-Team: Hebrew (https://app.transifex.com/odoo/teams/41243/he/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: he\n" +"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "ייצור" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "רכישות" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "עץ מוצר" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "שורת עץ מוצר " + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "נתח עלות (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "מספר הזמנות הרכש שנוצרו" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "תנועת יומן" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "מקור ייצור של %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "הוראת ייצור" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "הזמנת רכש" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "שורת הזמנת רכש" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "הזמנת רכש שנוצרה מ%s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "תנועת מלאי" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/hr.po b/i18n/hr.po new file mode 100644 index 0000000..ad32d0f --- /dev/null +++ b/i18n/hr.po @@ -0,0 +1,132 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Martin Trigaux, 2022 +# Bole , 2022 +# Tina Milas, 2022 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 15.5alpha1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2022-09-22 05:54+0000\n" +"Last-Translator: Tina Milas, 2022\n" +"Language-Team: Croatian (https://app.transifex.com/odoo/teams/41243/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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Proizvodnja" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Nabave" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Sastavnica" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Stavka sastavnice" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Broj izvornih PN" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Broj generiranih naloga za nabavu" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Stavka dnevnika" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Proizvodni izvor za %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Proizvodni nalog" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Nalog za nabavu" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Stavka naloga nabave" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Nalog za nabavu generiran iz %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Skladišni prijenos" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/hu.po b/i18n/hu.po new file mode 100644 index 0000000..2a965a3 --- /dev/null +++ b/i18n/hu.po @@ -0,0 +1,136 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# gezza , 2023 +# Tamás Németh , 2023 +# krnkris, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: krnkris, 2023\n" +"Language-Team: Hungarian (https://app.transifex.com/odoo/teams/41243/hu/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hu\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Termelés" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Beszerzések" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Anyagjegyzék" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Anyagjegyzék tétel" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Napló tétel" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Termelési rendelés" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Beszerzési megrendelés" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Beszerzési rendelés tétel" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Beszerzési rendelés generálva ebből: %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Készletmozgás" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/id.po b/i18n/id.po new file mode 100644 index 0000000..a54bf56 --- /dev/null +++ b/i18n/id.po @@ -0,0 +1,137 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Indonesian (https://app.transifex.com/odoo/teams/41243/id/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: id\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Manufaktur" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Purchase" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Laporan Gambaran Umum BOM" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Daftar Kebutuhan Material (BOM)" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Baris BOM" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Cost share komponen harus positif atau sama dengan nol." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Cost Share (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Jumlah Sumber MO" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Jumlah SPB yang dibuat" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Item Jurnal" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Laporan Gambaran Umum MO" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Sumber Manufaktur untuk %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo tidak dapat membuat entri anglo saxon. Valuasi total %s adalah nol." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Order Produksi" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Order Pembelian" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Baris Order Pembelian" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Purchase Order dibuat dari %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Pergerakan Stok" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Persentase biaya repartition komponen saat membeli kit. Total ongkos " +"komponen harus sama dengan 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "Total cost share untuk komponen BOM harus 100" diff --git a/i18n/is.po b/i18n/is.po new file mode 100644 index 0000000..7753d4f --- /dev/null +++ b/i18n/is.po @@ -0,0 +1,126 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 15.5alpha1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2022-09-22 05:54+0000\n" +"Language-Team: Icelandic (https://www.transifex.com/odoo/teams/41243/is/)\n" +"Language: is\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Stock Move" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/it.po b/i18n/it.po new file mode 100644 index 0000000..cecb32c --- /dev/null +++ b/i18n/it.po @@ -0,0 +1,141 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Italian (https://app.transifex.com/odoo/teams/41243/it/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: it\n" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Produzione" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Acquisti" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Resoconto panoramica DB" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Distinta base" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Riga distinta base" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" +"La quota totale dei costi dei componenti deve essere positiva o uguale a " +"zero." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Quota dei costi (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Numero di OdP alla fonte" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Numero di OdA generati" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Movimento contabile" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Resoconto panoramico ordini di produzione" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Fonte produzione di %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo non è in grado di generare le registrazioni anglosassoni. La " +"valutazione totale di %s è zero." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Ordine di produzione" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Ordine di acquisto" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Riga ordine di acquisto" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Ordine di acquisto generato da %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Movimento di magazzino" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Percentuale del costo di ripartizione dei componenti quando si acquista un " +"kit. Il totale del costo di tutti i componenti deve essere pari a 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"La quota totale del costo per il componente di una DiBa deve essere 100" diff --git a/i18n/ja.po b/i18n/ja.po new file mode 100644 index 0000000..3fc02e6 --- /dev/null +++ b/i18n/ja.po @@ -0,0 +1,134 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Japanese (https://app.transifex.com/odoo/teams/41243/ja/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ja\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "製造" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "購入" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "部品表概要レポート" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "部品表" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "部品表明細" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "構成品原価シェアは正の値または0と等しい必要があります。" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "原価シェア (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "製造オーダソース数" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "生成された購買オーダ数" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "仕訳項目" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "製造オーダ概要レポート" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr " %sの製造ソース" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "ODooはアングロサクソン人のエントリを生成できません。 %s の総評価は0です。" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "製造オーダ" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "購買オーダ" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "購買オーダ明細" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr " %sから生成された購買オーダ" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "在庫移動" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "キットを購買する際の構成品の再分割原価の割合。全構成品の原価の合計が100に等しい必要があります。" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "部品表の構成品の原価シェア合計は100である必要があります。" diff --git a/i18n/km.po b/i18n/km.po new file mode 100644 index 0000000..77c4c90 --- /dev/null +++ b/i18n/km.po @@ -0,0 +1,126 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server saas~11.5\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2018-09-18 09:49+0000\n" +"Language-Team: Khmer (https://www.transifex.com/odoo/teams/41243/km/)\n" +"Language: km\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/ko.po b/i18n/ko.po new file mode 100644 index 0000000..de6d4dc --- /dev/null +++ b/i18n/ko.po @@ -0,0 +1,134 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Korean (https://app.transifex.com/odoo/teams/41243/ko/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ko\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "제조" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "구매완료" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "자재명세서 전체 보고서" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "자재명세서" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "자재명세서 내역" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "구성 요소의 배분 원가는 양수 또는 0이어야 합니다." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "원가 배분 (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "원본 제조요청서 수" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "발행된 구매발주서 수" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "전표 항목" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "제조요청서 전체 보고서" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "%s의 제조 원본" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "Odoo는 앵글로 색슨 항목을 생성할 수 없습니다. %s의 총 평가는 0입니다." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "생산 주문" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "구매 주문" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "발주서 내역" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "%s에서 구매발주서 생성" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "재고 이동" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "키트 구매시 부속품을 다시 배분하는 비용의 백분율입니다. 모든 부속품 원가의 합계는 100이어야 합니다." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "자재명세서 상의 부속품의 배분 원가 총비율은 100이어야 합니다." diff --git a/i18n/lb.po b/i18n/lb.po new file mode 100644 index 0000000..6d79be0 --- /dev/null +++ b/i18n/lb.po @@ -0,0 +1,126 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server saas~12.4\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2019-08-26 09:13+0000\n" +"Language-Team: Luxembourgish (https://www.transifex.com/odoo/teams/41243/lb/)\n" +"Language: lb\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/lt.po b/i18n/lt.po new file mode 100644 index 0000000..705164b --- /dev/null +++ b/i18n/lt.po @@ -0,0 +1,137 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Jonas Zinkevicius , 2023 +# Martin Trigaux, 2023 +# Linas Versada , 2023 +# UAB "Draugiški sprendimai" , 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: UAB \"Draugiški sprendimai\" , 2023\n" +"Language-Team: Lithuanian (https://app.transifex.com/odoo/teams/41243/lt/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: lt\n" +"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Gamyba" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Pirkimai" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Komplektavimo specifikacija" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Komplektavimo specifikacijos eilutė" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Žurnalo įrašas" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Gamybos užsakymas" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Pirkimo užsakymas" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Pirkimo užsakymo eilutė " + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Atsargų perkėlimas" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/lv.po b/i18n/lv.po new file mode 100644 index 0000000..7392c1b --- /dev/null +++ b/i18n/lv.po @@ -0,0 +1,138 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Konstantins Zabogonskis , 2023 +# Arnis Putniņš , 2023 +# Martin Trigaux, 2023 +# Will Sensors, 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Will Sensors, 2024\n" +"Language-Team: Latvian (https://app.transifex.com/odoo/teams/41243/lv/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: lv\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Iepirkumi" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Recepte" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Kontējums" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo nespēj ģenerēt anglosakšu ierakstus. Kopējais %s novērtējums ir nulle." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Ražošanas orderis" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Pirkuma Pasūtījums" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Pasūtījuma rinda" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "No %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Krājumu kustība" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/mn.po b/i18n/mn.po new file mode 100644 index 0000000..a95bc27 --- /dev/null +++ b/i18n/mn.po @@ -0,0 +1,133 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Martin Trigaux, 2022 +# Minj P , 2022 +# Batmunkh Ganbat , 2022 +# Baskhuu Lodoikhuu , 2022 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 15.5alpha1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2022-09-22 05:54+0000\n" +"Last-Translator: Baskhuu Lodoikhuu , 2022\n" +"Language-Team: Mongolian (https://app.transifex.com/odoo/teams/41243/mn/)\n" +"Language: mn\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Худалдан авалт" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Орц" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Орцын мөр" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Журналын бичилт" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Үйлдвэрлэлийн захиалга" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Худалдан авалтын захиалга" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Худалдан авалтын захиалгын мөр" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Барааны хөдөлгөөн" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/nb.po b/i18n/nb.po new file mode 100644 index 0000000..843ab74 --- /dev/null +++ b/i18n/nb.po @@ -0,0 +1,132 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Lars Aam , 2022 +# Marius Stedjan , 2022 +# Martin Trigaux, 2022 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 15.5alpha1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2022-09-22 05:54+0000\n" +"Last-Translator: Martin Trigaux, 2022\n" +"Language-Team: Norwegian Bokmål (https://app.transifex.com/odoo/teams/41243/nb/)\n" +"Language: nb\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Stykkliste" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Material linje for stykkliste" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Kost fordeling (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Journalpost" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Produksjonsordre" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Innkjøpsordre" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Innkjøpsordrelinje" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Lagerbevegelse" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/nl.po b/i18n/nl.po new file mode 100644 index 0000000..599e66c --- /dev/null +++ b/i18n/nl.po @@ -0,0 +1,141 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Dutch (https://app.transifex.com/odoo/teams/41243/nl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Productie" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Inkopen" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Stuklijstoverzichtsrapport" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Stuklijst" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Stuklijstregel" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" +"Het kostenaandeel van de onderdelen moet positief zijn of gelijk zijn aan " +"nul." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Kostenaandeel (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Aantal bronproductieorders" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Aantal gegenereerde PO" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Boekingsregel" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Stuklijstoverzichtsrapport" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Productiebron van %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo kan de Angelsaksische boekingen niet genereren. De totale waardering " +"van %s is nul." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Productieorder" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Inkooporder" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Inkooporderregel" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Inkooporder gegenereerd van %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Voorraadverplaatsing" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Het percentage van de herverdelingskosten van onderdelen bij aankoop van een" +" kit. Het totaal van de kosten van alle onderdelen moet gelijk zijn aan 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"Het totale kostenaandeel voor een onderdeel van een stuklijst moet 100 zijn" diff --git a/i18n/pl.po b/i18n/pl.po new file mode 100644 index 0000000..5b365c6 --- /dev/null +++ b/i18n/pl.po @@ -0,0 +1,138 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Polish (https://app.transifex.com/odoo/teams/41243/pl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pl\n" +"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Produkcja" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Zakupy" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Raport z przeglądu BOM" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Zestawienie materiałowe" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Pozycja zestawienia materiałów" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Udział w kosztach komponentów musi być dodatni lub równy zeru." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Udział w kosztach" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Liczba źródeł MO" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Liczba wygenerowanych PO" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Pozycja zapisu" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Raport z przeglądu MO" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Źródło produkcji %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo nie jest w stanie wygenerować zapisów anglo-saksońskich. Całkowita " +"wycena wartości %s wynosi zero." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Zamówienie produkcji" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Zamówienie zakupu" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Pozycja zamówienia zakupu" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Zamówienie wygenerowane z %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Przesunięcie" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Procentowy koszt repartycji komponentów przy zakupie zestawu. Suma kosztów " +"wszystkich komponentów musi być równa 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "Całkowity udział w kosztach komponentu BoM musi wynosić 100" diff --git a/i18n/pt.po b/i18n/pt.po new file mode 100644 index 0000000..a592e80 --- /dev/null +++ b/i18n/pt.po @@ -0,0 +1,134 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Portuguese (https://app.transifex.com/odoo/teams/41243/pt/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt\n" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Compras" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Lista de Material" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Item do Diário" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Ordem de Produção" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Ordem de Compra" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Linha de Encomenda de Compra" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Movimento do Stock" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/pt_BR.po b/i18n/pt_BR.po new file mode 100644 index 0000000..7d54e37 --- /dev/null +++ b/i18n/pt_BR.po @@ -0,0 +1,141 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# Layna Nascimento, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Layna Nascimento, 2023\n" +"Language-Team: Portuguese (Brazil) (https://app.transifex.com/odoo/teams/41243/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Fabricação" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Compras" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Relatório geral da LM" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Lista de materiais" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Linha da lista de materiais" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" +"A divisão de custos dos componentes deve ser positiva ou igual a zero." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Divisão de custos (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Contagem de origens de ordens de produção" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Contagem de pedidos de compra gerados" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Item do diário" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Relatório geral de OP" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Origem de fabricação de %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"O Odoo não pode gerar as entradas anglo-saxônicas. A valoração total de %s é" +" zero." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Ordem de produção" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Pedido de compra" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Linha do pedido de compra" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Pedido de compra gerado a partir de %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Movimentação de estoque" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"A porcentagem da divisão de custos de componente ao comprar um kit. O custo " +"total de todos os componentes tem que ser igual a 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"O total da divisão de custos de componentes de uma LM deve ser igual a 100" diff --git a/i18n/purchase_mrp.pot b/i18n/purchase_mrp.pot new file mode 100644 index 0000000..55e7d73 --- /dev/null +++ b/i18n/purchase_mrp.pot @@ -0,0 +1,130 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 21:55+0000\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/ro.po b/i18n/ro.po new file mode 100644 index 0000000..000e24b --- /dev/null +++ b/i18n/ro.po @@ -0,0 +1,133 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Hongu Cosmin , 2022 +# Foldi Robert , 2022 +# Martin Trigaux, 2022 +# Dorin Hongu , 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 15.5alpha1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2022-09-22 05:54+0000\n" +"Last-Translator: Dorin Hongu , 2023\n" +"Language-Team: Romanian (https://app.transifex.com/odoo/teams/41243/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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "De fabricație" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Achiziții" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Raport general LDM" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Listă de materiale" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Linie Factură Materiale" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Partajare cost (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Element jurnal" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "Odoo nu este capabil să genereze intrări anglo saxon. Evaluarea totală a%s este 0." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Comanda de Producție" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Comandă de achiziție" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Linie comandă de achiziție" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Comandă de achiziție generată din %s " + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Mișcare stoc" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/ru.po b/i18n/ru.po new file mode 100644 index 0000000..33e8ccb --- /dev/null +++ b/i18n/ru.po @@ -0,0 +1,138 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2024\n" +"Language-Team: Russian (https://app.transifex.com/odoo/teams/41243/ru/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ru\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Производство" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Закупки" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Обзорный отчет по BOM" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Ведомость материалов" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Строка Спецификации" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Доля затрат на компоненты должна быть положительной или равной нулю." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Доля расходов (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Количество МО Источник" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Количество сгенерированных PO" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Наименование в журнале" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Обзорный отчет МО" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Производство Источник %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo не может генерировать англо-саксонские записи. Общая оценка %s равна " +"нулю." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Заказ на производство" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Заказа на покупку" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Позиция заказа на покупку" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Заказ на поставку, сформированный из %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Движение запасов" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Процент стоимости перераспределения компонентов при покупке набора. Сумма " +"стоимости всех компонентов должна быть равна 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "Общая доля затрат на компонент Банка Москвы должна составлять 100" diff --git a/i18n/sk.po b/i18n/sk.po new file mode 100644 index 0000000..e09a858 --- /dev/null +++ b/i18n/sk.po @@ -0,0 +1,134 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Slovak (https://app.transifex.com/odoo/teams/41243/sk/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sk\n" +"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Nákup" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Kusovník materiálu" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Rozpiska materiálu" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Položka účtovnej knihy" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Výrobná objednávka" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Objednávka" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Riadok nákupnej objednávky" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Pohyb skladu" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/sl.po b/i18n/sl.po new file mode 100644 index 0000000..b69da83 --- /dev/null +++ b/i18n/sl.po @@ -0,0 +1,134 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Martin Trigaux, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Martin Trigaux, 2023\n" +"Language-Team: Slovenian (https://app.transifex.com/odoo/teams/41243/sl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sl\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Kosovnica" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Postavka" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Proizvodni nalog" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Nabavni nalog" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Postavka nabavnega naloga" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Premik zaloge" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/sr.po b/i18n/sr.po new file mode 100644 index 0000000..fa9465b --- /dev/null +++ b/i18n/sr.po @@ -0,0 +1,141 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Martin Trigaux, 2023 +# Dragan Vukosavljevic , 2023 +# Milan Bojovic , 2023 +# コフスタジオ, 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: コフスタジオ, 2024\n" +"Language-Team: Serbian (https://app.transifex.com/odoo/teams/41243/sr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sr\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Proizvodnja" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Nabavke" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "BOM Overview Report" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Racun Materijala" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Bill of Material Line" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Components cost share have to be positive or equals to zero." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Cost Share (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Count of MO Source" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Count of generated PO" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Stavka izveštaja" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Manufacturing Source of %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Nalog za proizvodnju" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Nalog za nabavku" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Linija naloga za nabavku" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Purchase Order generated from %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Premeštanje zaliha" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "The total cost share for a BoM's component have to be 100" diff --git a/i18n/sr@latin.po b/i18n/sr@latin.po new file mode 100644 index 0000000..5609da3 --- /dev/null +++ b/i18n/sr@latin.po @@ -0,0 +1,129 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Nemanja Dragovic , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.saas~18\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-05-16 13:49+0000\n" +"PO-Revision-Date: 2017-09-20 09:53+0000\n" +"Last-Translator: Nemanja Dragovic , 2017\n" +"Language-Team: Serbian (Latin) (https://www.transifex.com/odoo/teams/41243/sr%40latin/)\n" +"Language: sr@latin\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: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero." +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Stavka narudžbenice" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "The percentage of the component repartition cost when purchasing a kit.The total of all components' cost have to be equal to 100." +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" diff --git a/i18n/sv.po b/i18n/sv.po new file mode 100644 index 0000000..8c4797a --- /dev/null +++ b/i18n/sv.po @@ -0,0 +1,144 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Leif Persson , 2023 +# Simon S, 2023 +# Anders Wallenquist , 2023 +# Lasse L, 2023 +# Martin Trigaux, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Martin Trigaux, 2023\n" +"Language-Team: Swedish (https://app.transifex.com/odoo/teams/41243/sv/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sv\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Tillverkning" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Inköp" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Översiktsrapport för Materiallista" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Produktstruktur" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Materialförteckningsrad" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Komponenternas kostnadsandel måste vara positiv eller lika med noll." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Kostnadsandel (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Antal källor för tillverkningsorder" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Antal genererade inköpsordrar" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Transaktion" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Tillverkningskälla för %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo kan inte generera de anglo-saxiska posterna. Den totala värderingen av " +"%s är noll." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Tillverkningsorder" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Inköpsorder" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Inköpsorderrad" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Inköpsorder genererad från %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Lagerflytt" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Andelen av komponentens omfördelningskostnad vid inköp av ett kit. Summan av" +" alla komponenters kostnad måste vara lika med 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"Den totala kostnadsandelen för en komponent i en materiallista måste vara " +"100" diff --git a/i18n/th.po b/i18n/th.po new file mode 100644 index 0000000..dc964e3 --- /dev/null +++ b/i18n/th.po @@ -0,0 +1,139 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Thai (https://app.transifex.com/odoo/teams/41243/th/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: th\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "การผลิต" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "การซื้อ" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "รายงานภาพรวมบิลวัสดุ (BOM)" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "บิลวัสดุ" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "รายการบิลวัสดุ" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "ส่วนแบ่งต้นทุนส่วนประกอบต้องมีค่าเป็นบวกหรือเท่ากับศูนย์" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "ส่วนแบ่งต้นทุน (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "จำนวนแหล่งที่มาของ MO" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "จำนวน PO ที่สร้าง" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "รายการสมุดรายวัน" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "รายงานภาพรวม MO" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "แหล่งที่มาการผลิตของ%s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo ไม่สามารถสร้างรายการ anglo saxon ได้ การประเมินมูลค่ารวมของ %s " +"เป็นศูนย์" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "คำสั่งผลิต" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "คำสั่งซื้อ" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "รายการคำสั่งซื้อ" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "คำสั่งซื้อที่สร้างจาก%s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "ย้ายสต็อก" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"เปอร์เซ็นต์ของต้นทุนการแบ่งส่วนของส่วนประกอบ เมื่อซื้อชุดอุปกรณ์ " +"ต้นทุนส่วนประกอบทั้งหมดจะต้องเท่ากับ 100" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "" +"ส่วนแบ่งต้นทุนทั้งหมดสำหรับส่วนประกอบของบิลวัสดุ (BoM) จะต้องเท่ากับ 100" diff --git a/i18n/tr.po b/i18n/tr.po new file mode 100644 index 0000000..92322f7 --- /dev/null +++ b/i18n/tr.po @@ -0,0 +1,143 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Özlem Atalay , 2023 +# İlknur Gözütok, 2023 +# Tugay Hatıl , 2023 +# Ertuğrul Güreş , 2023 +# Ediz Duman , 2023 +# Martin Trigaux, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Martin Trigaux, 2023\n" +"Language-Team: Turkish (https://app.transifex.com/odoo/teams/41243/tr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: tr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Üretim" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Satınalma" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "BOM Genel Bakış Raporu" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Ürün Reçetesi" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Ürün Reçetesi Satırları" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Bileşen maliyet oranı pozitif veya sıfıra eşit olmalıdır." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Maliyet Oranı (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "MO Kaynağı Sayısı" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Üretilen PO sayısı" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Yevmiye Kalemi" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "%s Üretim Kaynağı" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo, anglo sakson girişlerini oluşturamıyor.%s toplam değerlemesi " +"sıfırdır. " + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Üretim Emri" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Satınalma Siparişi" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Satınalma Sipariş Satırı" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "%s'den oluşturulan Satın Alma Siparişi" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Stok Hareketi" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Bir kit satın alırken bileşen yeniden bölümleme maliyetinin yüzdesi. Tüm " +"bileşenlerin maliyetinin toplamı 100'e eşit olmalıdır." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "Bir BoM'un bileşeni için toplam maliyet oranı 100 olmalıdır" diff --git a/i18n/uk.po b/i18n/uk.po new file mode 100644 index 0000000..58b387b --- /dev/null +++ b/i18n/uk.po @@ -0,0 +1,139 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Alina Lisnenko , 2023 +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Ukrainian (https://app.transifex.com/odoo/teams/41243/uk/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: uk\n" +"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Виробництво" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Купівлі" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Звіт огляду специфікації" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Специфікація" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Рядок специфікації" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Частка вартості компонентів має бути позитивною або дорівнювати нулю." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Розділена вартість (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Підрахунок джерел MO" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Підрахунок створених PO" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Елемент журналу" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Звіт огляду MO" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Джерело виробництва %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo не доступна для створення англо-саксонських записів. Загальне значення " +"%s нуль." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Замовлення на виробництво" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Замовлення на купівлю" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Рядок замовлення на купівлю" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Замовлення на купівлю створене з %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Складське переміщення " + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Відсоток вартості перерозподілу компонентів при купівлі комплекту. Загальна " +"вартість усіх компонентів повинна дорівнювати 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "Загальна частка витрат для компонента специфікації має становити 100" diff --git a/i18n/vi.po b/i18n/vi.po new file mode 100644 index 0000000..8346b85 --- /dev/null +++ b/i18n/vi.po @@ -0,0 +1,137 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Wil Odoo, 2023\n" +"Language-Team: Vietnamese (https://app.transifex.com/odoo/teams/41243/vi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: vi\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "Sản xuất" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "Mua hàng" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "Báo cáo tổng quan ĐMNL" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "Định mức nguyên liệu" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "Dòng định mức nguyên liệu" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "Tỷ lệ chi phí linh kiện phải là số dương hoặc bằng 0." + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "Tỷ lệ chi phí (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "Số lượng lệnh sản xuất nguồn" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "Số lượng đơn mua hàng đã tạo" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "Hạng mục bút toán" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "Báo cáo tổng quan ĐMNL" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "Nguồn sản xuất của %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "" +"Odoo không thể tạo các bút toán anglo saxon. Tổng giá trị của %s là 0." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "Lệnh sản xuất" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "Đơn mua hàng" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "Dòng đơn mua hàng" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "Đơn mua hàng được tạo từ %s" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "Dịch chuyển tồn kho" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "" +"Tỷ lệ phần trăm của chi phí phân chia lại linh kiện khi mua một kit. Tổng " +"chi phí của tất cả linh kiện phải bằng 100." + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "Tổng tỷ lệ chi phí cho các phụ phẩm của ĐMNL không thể vượt quá 100. " diff --git a/i18n/zh_CN.po b/i18n/zh_CN.po new file mode 100644 index 0000000..adf0265 --- /dev/null +++ b/i18n/zh_CN.po @@ -0,0 +1,136 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# 山西清水欧度(QQ:54773801) <54773801@qq.com>, 2023 +# 湘子 南 <1360857908@qq.com>, 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: 湘子 南 <1360857908@qq.com>, 2024\n" +"Language-Team: Chinese (China) (https://app.transifex.com/odoo/teams/41243/zh_CN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "制造" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "采购" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "BOM总览报表" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "物料清单" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "物料清单明细行" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "分担的费用必须为正数或等于零。" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "成本分摊(%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "统计 MO 来源计数" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "生成PO计数" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "日记账项目" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "生产订单(MO)概述报告" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "制造来源 %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "ERP 无法生成 anglo saxon 条目。%s 的总估值为零." + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "生产订单" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "采购订单" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "采购订单明细" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "从 %s生成采购订单" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "库存移动" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "购买套件时组件重新分配成本的百分比。" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "BoM组件的总成本份额必须为100" diff --git a/i18n/zh_TW.po b/i18n/zh_TW.po new file mode 100644 index 0000000..df00914 --- /dev/null +++ b/i18n/zh_TW.po @@ -0,0 +1,135 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * purchase_mrp +# +# Translators: +# Wil Odoo, 2023 +# Tony Ng, 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 17.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-26 21:55+0000\n" +"PO-Revision-Date: 2023-10-26 23:09+0000\n" +"Last-Translator: Tony Ng, 2024\n" +"Language-Team: Chinese (Taiwan) (https://app.transifex.com/odoo/teams/41243/zh_TW/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: zh_TW\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.purchase_order_form_mrp +msgid "Manufacturing" +msgstr "製造" + +#. module: purchase_mrp +#: model_terms:ir.ui.view,arch_db:purchase_mrp.mrp_production_form_view_purchase +msgid "Purchases" +msgstr "採購" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_bom_structure +msgid "BOM Overview Report" +msgstr "BOM結構清單報表" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom +msgid "Bill of Material" +msgstr "物料清單" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_bom_line +msgid "Bill of Material Line" +msgstr "BOM明細" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "Components cost share have to be positive or equals to zero." +msgstr "分擔的費用必須為正數或等於零。" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_bom_line__cost_share +msgid "Cost Share (%)" +msgstr "成本分攤 (%)" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_purchase_order__mrp_production_count +msgid "Count of MO Source" +msgstr "MO來源數" + +#. module: purchase_mrp +#: model:ir.model.fields,field_description:purchase_mrp.field_mrp_production__purchase_order_count +msgid "Count of generated PO" +msgstr "生成的 PO 數量" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_account_move_line +msgid "Journal Item" +msgstr "日記賬項目" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_report_mrp_report_mo_overview +msgid "MO Overview Report" +msgstr "生產訂單(MO)概覽報告" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/purchase.py:0 +#, python-format +msgid "Manufacturing Source of %s" +msgstr "製造訂單來源單據 %s" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/stock_move.py:0 +#, python-format +msgid "" +"Odoo is not able to generate the anglo saxon entries. The total valuation of" +" %s is zero." +msgstr "Odoo 無法生成盎格魯撒克遜庫存價值傳票。 %s 的總估值為零。" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_mrp_production +msgid "Production Order" +msgstr "製造訂單" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order +msgid "Purchase Order" +msgstr "採購訂單" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_purchase_order_line +msgid "Purchase Order Line" +msgstr "採購訂單項目" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_production.py:0 +#, python-format +msgid "Purchase Order generated from %s" +msgstr "自 %s 生成的採購訂單" + +#. module: purchase_mrp +#: model:ir.model,name:purchase_mrp.model_stock_move +msgid "Stock Move" +msgstr "庫存移動" + +#. module: purchase_mrp +#: model:ir.model.fields,help:purchase_mrp.field_mrp_bom_line__cost_share +msgid "" +"The percentage of the component repartition cost when purchasing a kit.The " +"total of all components' cost have to be equal to 100." +msgstr "購買套件時組件重新分配成本的百分比。" + +#. module: purchase_mrp +#. odoo-python +#: code:addons/purchase_mrp/models/mrp_bom.py:0 +#, python-format +msgid "The total cost share for a BoM's component have to be 100" +msgstr "用料清單組件的總成本份額必須為100" diff --git a/models/__init__.py b/models/__init__.py new file mode 100644 index 0000000..7b2d54d --- /dev/null +++ b/models/__init__.py @@ -0,0 +1,8 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from . import account_move +from . import purchase +from . import mrp_production +from . import mrp_bom +from . import stock_move diff --git a/models/account_move.py b/models/account_move.py new file mode 100644 index 0000000..9dbbc19 --- /dev/null +++ b/models/account_move.py @@ -0,0 +1,14 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import models + + +class AccountMoveLine(models.Model): + _inherit = "account.move.line" + + def _get_stock_valuation_layers(self, move): + """ Do not handle the invoice correction for kit. It has to be done + manually """ + layers = super()._get_stock_valuation_layers(move) + return layers.filtered(lambda svl: svl.product_id == self.product_id) diff --git a/models/mrp_bom.py b/models/mrp_bom.py new file mode 100644 index 0000000..ce296a3 --- /dev/null +++ b/models/mrp_bom.py @@ -0,0 +1,38 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import api, fields, models, _ +from odoo.exceptions import UserError + + +class MrpBom(models.Model): + _inherit = 'mrp.bom' + + @api.constrains('product_id', 'product_tmpl_id', 'bom_line_ids', 'byproduct_ids', 'operation_ids') + def _check_bom_lines(self): + res = super()._check_bom_lines() + for bom in self: + if all(not bl.cost_share for bl in bom.bom_line_ids): + continue + if any(bl.cost_share < 0 for bl in bom.bom_line_ids): + raise UserError(_("Components cost share have to be positive or equals to zero.")) + if sum(bom.bom_line_ids.mapped('cost_share')) != 100: + raise UserError(_("The total cost share for a BoM's component have to be 100")) + return res + + +class MrpBomLine(models.Model): + _inherit = 'mrp.bom.line' + + cost_share = fields.Float( + "Cost Share (%)", digits=(5, 2), # decimal = 2 is important for rounding calculations!! + help="The percentage of the component repartition cost when purchasing a kit." + "The total of all components' cost have to be equal to 100.") + + def _get_cost_share(self): + self.ensure_one() + if self.cost_share: + return self.cost_share / 100 + bom = self.bom_id + bom_lines_without_cost_share = bom.bom_line_ids.filtered(lambda bl: not bl.cost_share) + return 1 / len(bom_lines_without_cost_share) diff --git a/models/mrp_production.py b/models/mrp_production.py new file mode 100644 index 0000000..7a3a6d8 --- /dev/null +++ b/models/mrp_production.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import api, Command, fields, models, _ + + +class MrpProduction(models.Model): + _inherit = 'mrp.production' + + purchase_order_count = fields.Integer( + "Count of generated PO", + compute='_compute_purchase_order_count', + groups='purchase.group_purchase_user') + + @api.depends('procurement_group_id.stock_move_ids.created_purchase_line_ids.order_id', 'procurement_group_id.stock_move_ids.move_orig_ids.purchase_line_id.order_id') + def _compute_purchase_order_count(self): + for production in self: + production.purchase_order_count = len(production.procurement_group_id.stock_move_ids.created_purchase_line_ids.order_id | + production.procurement_group_id.stock_move_ids.move_orig_ids.purchase_line_id.order_id) + + def action_view_purchase_orders(self): + self.ensure_one() + purchase_order_ids = (self.procurement_group_id.stock_move_ids.created_purchase_line_ids.order_id | self.procurement_group_id.stock_move_ids.move_orig_ids.purchase_line_id.order_id).ids + action = { + 'res_model': 'purchase.order', + 'type': 'ir.actions.act_window', + } + if len(purchase_order_ids) == 1: + action.update({ + 'view_mode': 'form', + 'res_id': purchase_order_ids[0], + }) + else: + action.update({ + 'name': _("Purchase Order generated from %s", self.name), + 'domain': [('id', 'in', purchase_order_ids)], + 'view_mode': 'tree,form', + }) + return action + + def _get_document_iterate_key(self, move_raw_id): + iterate_key = super(MrpProduction, self)._get_document_iterate_key(move_raw_id) + if not iterate_key and move_raw_id.created_purchase_line_ids: + iterate_key = 'created_purchase_line_ids' + return iterate_key + + def _prepare_merge_orig_links(self): + origs = super()._prepare_merge_orig_links() + for move in self.move_raw_ids: + if not move.move_orig_ids or not move.created_purchase_line_ids: + continue + origs[move.bom_line_id.id].setdefault('created_purchase_line_ids', set()).update(move.created_purchase_line_ids.ids) + for vals in origs.values(): + if vals.get('created_purchase_line_ids'): + vals['created_purchase_line_ids'] = [Command.set(vals['created_purchase_line_ids'])] + else: + vals['created_purchase_line_ids'] = [] + return origs diff --git a/models/purchase.py b/models/purchase.py new file mode 100644 index 0000000..38c61c0 --- /dev/null +++ b/models/purchase.py @@ -0,0 +1,85 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from collections import defaultdict + +from odoo import api, fields, models, _ +from odoo.tools import OrderedSet + + +class PurchaseOrder(models.Model): + _inherit = 'purchase.order' + + mrp_production_count = fields.Integer( + "Count of MO Source", + compute='_compute_mrp_production_count', + groups='mrp.group_mrp_user') + + @api.depends('order_line.move_dest_ids.group_id.mrp_production_ids') + def _compute_mrp_production_count(self): + for purchase in self: + purchase.mrp_production_count = len(purchase._get_mrp_productions()) + + def _get_mrp_productions(self, **kwargs): + return self.order_line.move_dest_ids.group_id.mrp_production_ids | self.order_line.move_ids.move_dest_ids.group_id.mrp_production_ids + + def action_view_mrp_productions(self): + self.ensure_one() + mrp_production_ids = self._get_mrp_productions().ids + action = { + 'res_model': 'mrp.production', + 'type': 'ir.actions.act_window', + } + if len(mrp_production_ids) == 1: + action.update({ + 'view_mode': 'form', + 'res_id': mrp_production_ids[0], + }) + else: + action.update({ + 'name': _("Manufacturing Source of %s", self.name), + 'domain': [('id', 'in', mrp_production_ids)], + 'view_mode': 'tree,form', + }) + return action + + +class PurchaseOrderLine(models.Model): + _inherit = 'purchase.order.line' + + def _compute_qty_received(self): + kit_lines = self.env['purchase.order.line'] + lines_stock = self.filtered(lambda l: l.qty_received_method == 'stock_moves' and l.move_ids and l.state != 'cancel') + product_by_company = defaultdict(OrderedSet) + for line in lines_stock: + product_by_company[line.company_id].add(line.product_id.id) + kits_by_company = { + company: self.env['mrp.bom']._bom_find(self.env['product.product'].browse(product_ids), company_id=company.id, bom_type='phantom') + for company, product_ids in product_by_company.items() + } + for line in lines_stock: + kit_bom = kits_by_company[line.company_id].get(line.product_id) + if kit_bom: + moves = line.move_ids.filtered(lambda m: m.state == 'done' and not m.scrapped) + order_qty = line.product_uom._compute_quantity(line.product_uom_qty, kit_bom.product_uom_id) + filters = { + 'incoming_moves': lambda m: m.location_id.usage == 'supplier' and (not m.origin_returned_move_id or (m.origin_returned_move_id and m.to_refund)), + 'outgoing_moves': lambda m: m.location_id.usage != 'supplier' and m.to_refund + } + line.qty_received = moves._compute_kit_quantities(line.product_id, order_qty, kit_bom, filters) + kit_lines += line + super(PurchaseOrderLine, self - kit_lines)._compute_qty_received() + + def _get_upstream_documents_and_responsibles(self, visited): + return [(self.order_id, self.order_id.user_id, visited)] + + def _get_qty_procurement(self): + self.ensure_one() + # Specific case when we change the qty on a PO for a kit product. + # We don't try to be too smart and keep a simple approach: we compare the quantity before + # and after update, and return the difference. We don't take into account what was already + # sent, or any other exceptional case. + bom = self.env['mrp.bom'].sudo()._bom_find(self.product_id, bom_type='phantom')[self.product_id] + if bom and 'previous_product_qty' in self.env.context: + return self.env.context['previous_product_qty'].get(self.id, 0.0) + return super()._get_qty_procurement() diff --git a/models/stock_move.py b/models/stock_move.py new file mode 100644 index 0000000..8f2efcf --- /dev/null +++ b/models/stock_move.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import _, models, fields +from odoo.tools.float_utils import float_is_zero, float_round +from odoo.exceptions import UserError + + +class StockMove(models.Model): + _inherit = 'stock.move' + + def _prepare_phantom_move_values(self, bom_line, product_qty, quantity_done): + vals = super(StockMove, self)._prepare_phantom_move_values(bom_line, product_qty, quantity_done) + if self.purchase_line_id: + vals['purchase_line_id'] = self.purchase_line_id.id + return vals + + def _get_price_unit(self): + if self.product_id == self.purchase_line_id.product_id or not self.bom_line_id or self._should_ignore_pol_price(): + return super()._get_price_unit() + line = self.purchase_line_id + kit_price_unit = line._get_gross_price_unit() + if line.currency_id != self.company_id.currency_id: + kit_price_unit = line.currency_id._convert(kit_price_unit, self.company_id.currency_id, self.company_id, fields.Date.context_today(self), round=False) + cost_share = self.bom_line_id._get_cost_share() + price_unit_prec = self.env['decimal.precision'].precision_get('Product Price') + return float_round(kit_price_unit * cost_share * line.product_qty / self.product_qty, precision_digits=price_unit_prec) + + def _get_valuation_price_and_qty(self, related_aml, to_curr): + valuation_price_unit_total, valuation_total_qty = super()._get_valuation_price_and_qty(related_aml, to_curr) + boms = self.env['mrp.bom']._bom_find(related_aml.product_id, company_id=related_aml.company_id.id, bom_type='phantom') + if related_aml.product_id in boms: + kit_bom = boms[related_aml.product_id] + order_qty = related_aml.product_id.uom_id._compute_quantity(related_aml.quantity, kit_bom.product_uom_id) + filters = { + 'incoming_moves': lambda m: m.location_id.usage == 'supplier' and (not m.origin_returned_move_id or (m.origin_returned_move_id and m.to_refund)), + 'outgoing_moves': lambda m: m.location_id.usage != 'supplier' and m.to_refund + } + valuation_total_qty = self._compute_kit_quantities(related_aml.product_id, order_qty, kit_bom, filters) + valuation_total_qty = kit_bom.product_uom_id._compute_quantity(valuation_total_qty, related_aml.product_id.uom_id) + if float_is_zero(valuation_total_qty, precision_rounding=related_aml.product_uom_id.rounding or related_aml.product_id.uom_id.rounding): + raise UserError(_('Odoo is not able to generate the anglo saxon entries. The total valuation of %s is zero.', related_aml.product_id.display_name)) + return valuation_price_unit_total, valuation_total_qty diff --git a/report/__init__.py b/report/__init__.py new file mode 100644 index 0000000..9fc85c8 --- /dev/null +++ b/report/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from . import mrp_report_bom_structure +from . import mrp_report_mo_overview diff --git a/report/mrp_report_bom_structure.py b/report/mrp_report_bom_structure.py new file mode 100644 index 0000000..a9a64c3 --- /dev/null +++ b/report/mrp_report_bom_structure.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import api, models + +class ReportBomStructure(models.AbstractModel): + _inherit = 'report.mrp.report_bom_structure' + + @api.model + def _format_route_info(self, rules, rules_delay, warehouse, product, bom, quantity): + res = super()._format_route_info(rules, rules_delay, warehouse, product, bom, quantity) + if self._is_buy_route(rules, product, bom): + buy_rules = [rule for rule in rules if rule.action == 'buy'] + supplier = product._select_seller(quantity=quantity, uom_id=product.uom_id) + parent_bom = self.env.context.get('parent_bom') + purchase_lead = parent_bom.company_id.days_to_purchase + parent_bom.company_id.po_lead if parent_bom and parent_bom.company_id else 0 + if supplier: + return { + 'route_type': 'buy', + 'route_name': buy_rules[0].route_id.display_name, + 'route_detail': supplier.display_name, + 'lead_time': supplier.delay + rules_delay + purchase_lead, + 'supplier_delay': supplier.delay + rules_delay + purchase_lead, + 'supplier': supplier, + } + return res + + @api.model + def _is_buy_route(self, rules, product, bom): + return any(rule for rule in rules if rule.action == 'buy' and product.seller_ids) + + @api.model + def _get_resupply_availability(self, route_info, components): + if route_info.get('route_type') == 'buy': + supplier_delay = route_info.get('supplier_delay', 0) + return ('estimated', supplier_delay) + return super()._get_resupply_availability(route_info, components) diff --git a/report/mrp_report_mo_overview.py b/report/mrp_report_mo_overview.py new file mode 100644 index 0000000..fda4f1f --- /dev/null +++ b/report/mrp_report_mo_overview.py @@ -0,0 +1,88 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import fields, models + +class ReportMoOverview(models.AbstractModel): + _inherit = 'report.mrp.report_mo_overview' + + def _get_extra_replenishments(self, product): + res = super()._get_extra_replenishments(product) + domain = [('state', 'in', ['draft', 'sent', 'to approve']), ('product_id', '=', product.id)] + warehouse_id = self.env.context.get('warehouse', False) + if warehouse_id: + domain += [('order_id.picking_type_id.warehouse_id', '=', warehouse_id)] + po_lines = self.env['purchase.order.line'].search(domain, order='date_planned, id') + + for po_line in po_lines: + line_qty = po_line.product_qty + for move in po_line.move_dest_ids: + linked_production = self.env['stock.move'].browse(move._rollup_move_dests()).raw_material_production_id + # Only create specific lines for moves directly linked to a manufacturing order + if not linked_production: + continue + prod_qty = min(line_qty, move.product_uom._compute_quantity(move.product_uom_qty, po_line.product_uom)) + res.append(self._format_extra_replenishment(po_line, prod_qty, linked_production.id)) + line_qty -= prod_qty + if line_qty: + res.append(self._format_extra_replenishment(po_line, line_qty)) + + return res + + def _format_extra_replenishment(self, po_line, quantity, production_id=False): + po = po_line.order_id + price = po_line.taxes_id.with_context(round=False).compute_all( + po_line.price_unit, currency=po.currency_id, quantity=quantity, product=po_line.product_id, partner=po.partner_id + )['total_void'] + return { + '_name': 'purchase.order', + 'id': po.id, + 'cost': price, + 'quantity': quantity, + 'uom': po_line.product_uom, + 'production_id': production_id + } + + def _get_replenishment_receipt(self, doc_in, components): + res = super()._get_replenishment_receipt(doc_in, components) + if doc_in._name == 'purchase.order': + if doc_in.state != 'purchase': + return self._format_receipt_date('estimated', doc_in.date_planned) + in_pickings = doc_in.picking_ids.filtered(lambda p: p.state not in ('done', 'cancel')) + planned_date = max(in_pickings.mapped('scheduled_date')) if in_pickings else doc_in.date_planned + return self._format_receipt_date('expected', planned_date) + return res + + def _get_resupply_data(self, rules, rules_delay, quantity, uom_id, product, production): + res = super()._get_resupply_data(rules, rules_delay, quantity, uom_id, product, production) + if any(rule for rule in rules if rule.action == 'buy' and product.seller_ids): + supplier = product._select_seller(quantity=quantity, uom_id=product.uom_id) + if supplier: + return { + 'delay': supplier.delay + rules_delay, + 'cost': supplier.price * uom_id._compute_quantity(quantity, supplier.product_uom), + 'currency': supplier.currency_id, + } + return res + + def _is_doc_in_done(self, doc_in): + if doc_in._name == 'purchase.order': + return doc_in.state == 'purchase' and all(move.state in ('done', 'cancel') for move in doc_in.order_line.move_ids) + return super()._is_doc_in_done(doc_in) + + def _get_origin(self, move): + if move.purchase_line_id: + return move.purchase_line_id.order_id + return super()._get_origin(move) + + def _get_replenishment_mo_cost(self, product, quantity, uom_id, currency, move_in=False): + if move_in and move_in.purchase_line_id: + po_line = move_in.purchase_line_id + po = po_line.order_id + price = po_line.taxes_id.with_context(round=False).compute_all( + po_line.price_unit, currency=po.currency_id, quantity=uom_id._compute_quantity(quantity, move_in.purchase_line_id.product_uom), + product=po_line.product_id, partner=po.partner_id + )['total_void'] + price = po_line.currency_id._convert(price, currency, (move_in.company_id or self.env.company), fields.Date.today()) + return currency.round(price) + return super()._get_replenishment_mo_cost(product, quantity, uom_id, currency, move_in) diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv new file mode 100644 index 0000000..42ef756 --- /dev/null +++ b/security/ir.model.access.csv @@ -0,0 +1,3 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_mrp_bom_purchase_user,mrp.bom,mrp.model_mrp_bom,purchase.group_purchase_user,1,0,0,0 +access_mrp_bom_line_purchase_user,mrp.bom.line,mrp.model_mrp_bom_line,purchase.group_purchase_user,1,0,0,0 diff --git a/static/src/components/bom_overview_line/mrp_bom_overview_line.js b/static/src/components/bom_overview_line/mrp_bom_overview_line.js new file mode 100644 index 0000000..2a27b93 --- /dev/null +++ b/static/src/components/bom_overview_line/mrp_bom_overview_line.js @@ -0,0 +1,16 @@ +/** @odoo-module **/ + +import { patch } from "@web/core/utils/patch"; +import { BomOverviewLine } from "@mrp/components/bom_overview_line/mrp_bom_overview_line"; + +patch(BomOverviewLine.prototype, { + /** + * @override + */ + async goToRoute(routeType) { + if (routeType == "buy") { + return this.goToAction(this.data.link_id, this.data.link_model); + } + return super.goToRoute(...arguments); + } +}); diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..5ba019d --- /dev/null +++ b/tests/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from . import test_purchase_mrp_flow +from . import test_anglo_saxon_valuation diff --git a/tests/test_anglo_saxon_valuation.py b/tests/test_anglo_saxon_valuation.py new file mode 100644 index 0000000..e41d2d5 --- /dev/null +++ b/tests/test_anglo_saxon_valuation.py @@ -0,0 +1,235 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo.fields import Date, Datetime +from odoo.tools import mute_logger +from odoo.tests import Form, tagged +from odoo.addons.account.tests.common import AccountTestInvoicingCommon +from odoo.addons.stock_account.tests.test_stockvaluation import _create_accounting_data + + +@tagged('post_install', '-at_install') +class TestAngloSaxonValuationPurchaseMRP(AccountTestInvoicingCommon): + + @classmethod + def setUpClass(cls, chart_template_ref=None): + super().setUpClass(chart_template_ref=chart_template_ref) + cls.vendor01 = cls.env['res.partner'].create({'name': "Super Vendor"}) + + cls.stock_input_account, cls.stock_output_account, cls.stock_valuation_account, cls.expense_account, cls.stock_journal = _create_accounting_data(cls.env) + cls.avco_category = cls.env['product.category'].create({ + 'name': 'AVCO', + 'property_cost_method': 'average', + 'property_valuation': 'real_time', + 'property_stock_account_input_categ_id': cls.stock_input_account.id, + 'property_stock_account_output_categ_id': cls.stock_output_account.id, + 'property_stock_journal': cls.stock_journal.id, + 'property_stock_valuation_account_id': cls.stock_valuation_account.id, + }) + + currency_grp = cls.env.ref('base.group_multi_currency') + cls.env.user.write({'groups_id': [(4, currency_grp.id)]}) + + cls.env.company.anglo_saxon_accounting = True + + def test_kit_anglo_saxo_price_diff(self): + """ + Suppose an automated-AVCO configuration and a Price Difference Account defined on + the product category. When buying a kit of that category at a higher price than its + cost, the difference should be published on the Price Difference Account + """ + kit, compo01, compo02 = self.env['product.product'].create([{ + 'name': name, + 'standard_price': price, + 'type': 'product', + 'categ_id': self.avco_category.id, + } for name, price in [('Kit', 0), ('Compo 01', 10), ('Compo 02', 20)]]) + + self.env['mrp.bom'].create({ + 'product_tmpl_id': kit.product_tmpl_id.id, + 'type': 'phantom', + 'bom_line_ids': [(0, 0, { + 'product_id': p.id, + 'product_qty': 1, + }) for p in [compo01, compo02]] + }) + kit.button_bom_cost() + + po_form = Form(self.env['purchase.order']) + po_form.partner_id = self.vendor01 + with po_form.order_line.new() as pol_form: + pol_form.product_id = kit + pol_form.price_unit = 100 + po = po_form.save() + po.button_confirm() + + po.picking_ids.button_validate() + + action = po.action_create_invoice() + invoice = self.env['account.move'].browse(action['res_id']) + invoice.invoice_date = Date.today() + invoice.action_post() + + svls = po.order_line.move_ids.stock_valuation_layer_ids + self.assertEqual(len(svls), 2, "The invoice should have created two SVL (one by kit's component) for the price diff") + self.assertEqual(sum(svls.mapped('value')), 100, "Should be the standard price of both components") + + input_amls = self.env['account.move.line'].search([('account_id', '=', self.stock_input_account.id)]) + self.assertEqual(sum(input_amls.mapped('balance')), 0) + + def test_buy_deliver_and_return_kit_with_auto_avco_components(self): + """ + A kit K with two AVCO components + - C01, cost share 25% + - C02, cost share 75% + K in Units + C01, C02 in Litres + Buy and receive 1 kit @ 100 + Deliver the kit + Update the cost shares + Return the delivery + """ + stock_location = self.env['stock.location'].search([ + ('company_id', '=', self.env.company.id), + ('name', '=', 'Stock'), + ]) + customer_location = self.env.ref('stock.stock_location_customers') + type_out = self.env['stock.picking.type'].search([ + ('company_id', '=', self.env.company.id), + ('name', '=', 'Delivery Orders')]) + uom_unit = self.env.ref('uom.product_uom_unit') + uom_litre = self.env.ref('uom.product_uom_litre') + + component01, component02 = self.env['product.product'].create([{ + 'name': 'Component %s' % name, + 'type': 'product', + 'categ_id': self.avco_category.id, + 'uom_id': uom_litre.id, + 'uom_po_id': uom_litre.id, + } for name in ['01', '02']]) + + kit = self.env['product.product'].create({ + 'name': 'Super Kit', + 'type': 'consu', + 'uom_id': uom_unit.id, + 'uom_po_id': uom_unit.id, + }) + + bom_kit = self.env['mrp.bom'].create({ + 'product_tmpl_id': kit.product_tmpl_id.id, + 'type': 'phantom', + 'bom_line_ids': [(0, 0, { + 'product_id': component01.id, + 'product_qty': 1, + 'cost_share': 25, + }), (0, 0, { + 'product_id': component02.id, + 'product_qty': 1, + 'cost_share': 75, + })], + }) + + po_form = Form(self.env['purchase.order']) + po_form.partner_id = self.vendor01 + with po_form.order_line.new() as pol_form: + pol_form.product_id = kit + pol_form.price_unit = 100 + pol_form.taxes_id.clear() + po = po_form.save() + po.button_confirm() + + receipt = po.picking_ids + receipt.move_line_ids.quantity = 1 + receipt.button_validate() + + self.assertEqual(receipt.state, 'done') + self.assertEqual(receipt.move_line_ids.product_id, component01 | component02) + self.assertEqual(po.order_line.qty_received, 1) + self.assertEqual(component01.stock_valuation_layer_ids.value, 25) + self.assertEqual(component02.stock_valuation_layer_ids.value, 75) + + delivery = self.env['stock.picking'].create({ + 'picking_type_id': type_out.id, + 'location_id': stock_location.id, + 'location_dest_id': customer_location.id, + 'move_ids': [(0, 0, { + 'name': kit.name, + 'product_id': kit.id, + 'product_uom': kit.uom_id.id, + 'product_uom_qty': 1.0, + 'location_id': stock_location.id, + 'location_dest_id': customer_location.id, + })], + }) + delivery.action_confirm() + delivery.move_ids.move_line_ids.quantity = 1 + delivery.button_validate() + + self.assertEqual(component01.stock_valuation_layer_ids.mapped('value'), [25, -25]) + self.assertEqual(component02.stock_valuation_layer_ids.mapped('value'), [75, -75]) + + with mute_logger('odoo.tests.form.onchange'): + with Form(bom_kit) as kit_form: + with kit_form.bom_line_ids.edit(0) as line: + line.cost_share = 30 + with kit_form.bom_line_ids.edit(1) as line: + line.cost_share = 70 + + wizard_form = Form(self.env['stock.return.picking'].with_context(active_id=delivery.id, active_model='stock.picking')) + wizard = wizard_form.save() + action = wizard.create_returns() + return_picking = self.env["stock.picking"].browse(action["res_id"]) + return_picking.move_ids.move_line_ids.quantity = 1 + return_picking.button_validate() + + self.assertEqual(component01.stock_valuation_layer_ids.mapped('value'), [25, -25, 25]) + self.assertEqual(component02.stock_valuation_layer_ids.mapped('value'), [75, -75, 75]) + + def test_valuation_multicurrency_with_kits(self): + """ Purchase a Kit in multi-currency and verify that the amount_currency is correctly computed. + """ + + # Setup Kit + kit, cmp = self.env['product.product'].create([{ + 'name': name, + 'standard_price': 0, + 'type': 'product', + 'categ_id': self.avco_category.id, + } for name in ['Kit', 'Cmp']]) + + self.env['mrp.bom'].create({ + 'product_tmpl_id': kit.product_tmpl_id.id, + 'type': 'phantom', + 'bom_line_ids': [(0, 0, {'product_id': cmp.id, 'product_qty': 5})] + }) + + # Setup Currency + usd = self.env.ref('base.USD') + eur = self.env.ref('base.EUR') + self.env['res.currency.rate'].create({ + 'name': Datetime.today(), + 'currency_id': usd.id, + 'rate': 1}) + self.env['res.currency.rate'].create({ + 'name': Datetime.today(), + 'currency_id': eur.id, + 'rate': 2}) + + # Create Purchase + po_form = Form(self.env['purchase.order']) + po_form.partner_id = self.vendor01 + po_form.currency_id = eur + with po_form.order_line.new() as pol_form: + pol_form.product_id = kit + pol_form.price_unit = 100 # $50 + po = po_form.save() + po.button_confirm() + + po.picking_ids.button_validate() + + svl = po.order_line.move_ids.stock_valuation_layer_ids.ensure_one() + input_aml = self.env['account.move.line'].search([('account_id', '=', self.stock_valuation_account.id)]) + + self.assertEqual(svl.value, 50) # USD + self.assertEqual(input_aml.amount_currency, 100) # EUR + self.assertEqual(input_aml.balance, 50) # USD diff --git a/tests/test_purchase_mrp_flow.py b/tests/test_purchase_mrp_flow.py new file mode 100644 index 0000000..b23c0e1 --- /dev/null +++ b/tests/test_purchase_mrp_flow.py @@ -0,0 +1,933 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from datetime import timedelta + +from odoo.addons.account.tests.common import AccountTestInvoicingCommon +from odoo.tests.common import Form +from odoo.tests import tagged +from odoo import fields +from odoo.fields import Command + + +@tagged('post_install', '-at_install') +class TestPurchaseMrpFlow(AccountTestInvoicingCommon): + + @classmethod + def setUpClass(cls, chart_template_ref=None): + super().setUpClass(chart_template_ref=chart_template_ref) + # Useful models + cls.UoM = cls.env['uom.uom'] + cls.categ_unit = cls.env.ref('uom.product_uom_categ_unit') + cls.categ_kgm = cls.env.ref('uom.product_uom_categ_kgm') + cls.warehouse = cls.env['stock.warehouse'].search([('company_id', '=', cls.env.company.id)]) + cls.stock_location = cls.warehouse.lot_stock_id + + grp_uom = cls.env.ref('uom.group_uom') + group_user = cls.env.ref('base.group_user') + group_user.write({'implied_ids': [(4, grp_uom.id)]}) + cls.env.user.write({'groups_id': [(4, grp_uom.id)]}) + + cls.uom_kg = cls.env['uom.uom'].search([('category_id', '=', cls.categ_kgm.id), ('uom_type', '=', 'reference')], + limit=1) + cls.uom_kg.write({ + 'name': 'Test-KG', + 'rounding': 0.000001}) + cls.uom_gm = cls.UoM.create({ + 'name': 'Test-G', + 'category_id': cls.categ_kgm.id, + 'uom_type': 'smaller', + 'factor': 1000.0, + 'rounding': 0.001}) + cls.uom_unit = cls.env['uom.uom'].search( + [('category_id', '=', cls.categ_unit.id), ('uom_type', '=', 'reference')], limit=1) + cls.uom_unit.write({ + 'name': 'Test-Unit', + 'rounding': 0.01}) + cls.uom_dozen = cls.UoM.create({ + 'name': 'Test-DozenA', + 'category_id': cls.categ_unit.id, + 'factor_inv': 12, + 'uom_type': 'bigger', + 'rounding': 0.001}) + + # Creating all components + cls.component_a = cls._create_product('Comp A', cls.uom_unit) + cls.component_b = cls._create_product('Comp B', cls.uom_unit) + cls.component_c = cls._create_product('Comp C', cls.uom_unit) + cls.component_d = cls._create_product('Comp D', cls.uom_unit) + cls.component_e = cls._create_product('Comp E', cls.uom_unit) + cls.component_f = cls._create_product('Comp F', cls.uom_unit) + cls.component_g = cls._create_product('Comp G', cls.uom_unit) + + # Create a kit 'kit_1' : + # ----------------------- + # + # kit_1 --|- component_a x2 + # |- component_b x1 + # |- component_c x3 + + cls.kit_1 = cls._create_product('Kit 1', cls.uom_unit) + + cls.bom_kit_1 = cls.env['mrp.bom'].create({ + 'product_tmpl_id': cls.kit_1.product_tmpl_id.id, + 'product_qty': 1.0, + 'type': 'phantom'}) + + BomLine = cls.env['mrp.bom.line'] + BomLine.create({ + 'product_id': cls.component_a.id, + 'product_qty': 2.0, + 'bom_id': cls.bom_kit_1.id}) + BomLine.create({ + 'product_id': cls.component_b.id, + 'product_qty': 1.0, + 'bom_id': cls.bom_kit_1.id}) + BomLine.create({ + 'product_id': cls.component_c.id, + 'product_qty': 3.0, + 'bom_id': cls.bom_kit_1.id}) + + # Create a kit 'kit_parent' : + # --------------------------- + # + # kit_parent --|- kit_2 x2 --|- component_d x1 + # | |- kit_1 x2 -------|- component_a x2 + # | |- component_b x1 + # | |- component_c x3 + # | + # |- kit_3 x1 --|- component_f x1 + # | |- component_g x2 + # | + # |- component_e x1 + + # Creating all kits + cls.kit_2 = cls._create_product('Kit 2', cls.uom_unit) + cls.kit_3 = cls._create_product('kit 3', cls.uom_unit) + cls.kit_parent = cls._create_product('Kit Parent', cls.uom_unit) + + # Linking the kits and the components via some 'phantom' BoMs + bom_kit_2 = cls.env['mrp.bom'].create({ + 'product_tmpl_id': cls.kit_2.product_tmpl_id.id, + 'product_qty': 1.0, + 'type': 'phantom'}) + + BomLine.create({ + 'product_id': cls.component_d.id, + 'product_qty': 1.0, + 'bom_id': bom_kit_2.id}) + BomLine.create({ + 'product_id': cls.kit_1.id, + 'product_qty': 2.0, + 'bom_id': bom_kit_2.id}) + + bom_kit_parent = cls.env['mrp.bom'].create({ + 'product_tmpl_id': cls.kit_parent.product_tmpl_id.id, + 'product_qty': 1.0, + 'type': 'phantom'}) + + BomLine.create({ + 'product_id': cls.component_e.id, + 'product_qty': 1.0, + 'bom_id': bom_kit_parent.id}) + BomLine.create({ + 'product_id': cls.kit_2.id, + 'product_qty': 2.0, + 'bom_id': bom_kit_parent.id}) + + bom_kit_3 = cls.env['mrp.bom'].create({ + 'product_tmpl_id': cls.kit_3.product_tmpl_id.id, + 'product_qty': 1.0, + 'type': 'phantom'}) + + BomLine.create({ + 'product_id': cls.component_f.id, + 'product_qty': 1.0, + 'bom_id': bom_kit_3.id}) + BomLine.create({ + 'product_id': cls.component_g.id, + 'product_qty': 2.0, + 'bom_id': bom_kit_3.id}) + + BomLine.create({ + 'product_id': cls.kit_3.id, + 'product_qty': 2.0, + 'bom_id': bom_kit_parent.id}) + + @classmethod + def _create_product(cls, name, uom_id, routes=()): + p = Form(cls.env['product.product']) + p.name = name + p.detailed_type = 'product' + p.uom_id = uom_id + p.uom_po_id = uom_id + p.route_ids.clear() + for r in routes: + p.route_ids.add(r) + return p.save() + + # Helper to process quantities based on a dict following this structure : + # + # qty_to_process = { + # product_id: qty + # } + + def _process_quantities(self, moves, quantities_to_process): + """ Helper to process quantities based on a dict following this structure : + qty_to_process = { + product_id: qty + } + """ + moves_to_process = moves.filtered(lambda m: m.product_id in quantities_to_process.keys()) + for move in moves_to_process: + move.quantity = quantities_to_process[move.product_id] + move.picked = True + + def _assert_quantities(self, moves, quantities_to_process): + """ Helper to check expected quantities based on a dict following this structure : + qty_to_process = { + product_id: qty + ... + } + """ + moves_to_process = moves.filtered(lambda m: m.product_id in quantities_to_process.keys()) + for move in moves_to_process: + self.assertEqual(move.product_uom_qty, quantities_to_process[move.product_id]) + + def _create_move_quantities(self, qty_to_process, components, warehouse): + """ Helper to creates moves in order to update the quantities of components + on a specific warehouse. This ensure that all compute fields are triggered. + The structure of qty_to_process should be the following : + + qty_to_process = { + component: (qty, uom), + ... + } + """ + for comp in components: + f = Form(self.env['stock.move']) + f.name = 'Test Receipt Components' + f.location_id = self.env.ref('stock.stock_location_suppliers') + f.location_dest_id = warehouse.lot_stock_id + f.product_id = comp + f.product_uom = qty_to_process[comp][1] + f.product_uom_qty = qty_to_process[comp][0] + move = f.save() + move._action_confirm() + move._action_assign() + move_line = move.move_line_ids[0] + move_line.quantity = qty_to_process[comp][0] + move._action_done() + + def test_kit_component_cost(self): + # Set kit and componnet product to automated FIFO + self.kit_1.categ_id.property_cost_method = 'fifo' + self.kit_1.categ_id.property_valuation = 'real_time' + + self.kit_1.bom_ids.product_qty = 3 + + po = Form(self.env['purchase.order']) + po.partner_id = self.env['res.partner'].create({'name': 'Testy'}) + with po.order_line.new() as line: + line.product_id = self.kit_1 + line.product_qty = 120 + line.price_unit = 1260 + po = po.save() + po.button_confirm() + po.picking_ids.button_validate() + + # Unit price equaly dived among bom lines (cost share not set) + # # price further divided by product qty of each component + components = [ + self.component_a, + self.component_b, + self.component_c, + ] + + self.assertEqual(sum([k.standard_price * k.qty_available for k in components]), 120 * 1260) + + def test_kit_component_cost_multi_currency(self): + # Set kit and component product to automated FIFO + kit = self._create_product('Kit', self.uom_unit) + cmp = self._create_product('CMP', self.uom_unit) + + bom_kit = self.env['mrp.bom'].create({ + 'product_tmpl_id': kit.product_tmpl_id.id, + 'product_qty': 1.0, + 'type': 'phantom' + }) + self.env['mrp.bom.line'].create({ + 'product_id': cmp.id, + 'product_qty': 3.0, + 'bom_id': bom_kit.id}) + + kit.categ_id.property_cost_method = 'fifo' + kit.categ_id.property_valuation = 'real_time' + + mock_currency = self.env['res.currency'].create({ + 'name': 'MOCK', + 'symbol': 'MC', + }) + self.env['res.currency.rate'].create({ + 'name': '2023-01-01', + 'company_rate': 100.0, + 'currency_id': mock_currency.id, + 'company_id': self.env.company.id, + }) + + po = Form(self.env['purchase.order']) + po.partner_id = self.env['res.partner'].create({'name': 'Testy'}) + po.currency_id = mock_currency + + with po.order_line.new() as line: + line.product_id = kit + line.product_qty = 1 + line.price_unit = 300.00 + + po = po.save() + po.button_confirm() + po.picking_ids.button_validate() + + layer = po.picking_ids.move_ids.stock_valuation_layer_ids + self.assertEqual(layer.unit_cost, 1) + + def test_01_sale_mrp_kit_qty_delivered(self): + """ Test that the quantities delivered are correct when + a kit with subkits is ordered with multiple backorders and returns + """ + + # 'kit_parent' structure: + # --------------------------- + # + # kit_parent --|- kit_2 x2 --|- component_d x1 + # | |- kit_1 x2 -------|- component_a x2 + # | |- component_b x1 + # | |- component_c x3 + # | + # |- kit_3 x1 --|- component_f x1 + # | |- component_g x2 + # | + # |- component_e x1 + + # Creation of a sale order for x7 kit_parent + partner = self.env['res.partner'].create({'name': 'My Test Partner'}) + f = Form(self.env['purchase.order']) + f.partner_id = partner + with f.order_line.new() as line: + line.product_id = self.kit_parent + line.product_qty = 7.0 + line.price_unit = 10 + + po = f.save() + po.button_confirm() + + # Check picking creation, its move lines should concern + # only components. Also checks that the quantities are corresponding + # to the PO + self.assertEqual(len(po.picking_ids), 1) + order_line = po.order_line[0] + picking_original = po.picking_ids[0] + move_ids = picking_original.move_ids + products = move_ids.mapped('product_id') + kits = [self.kit_parent, self.kit_3, self.kit_2, self.kit_1] + components = [self.component_a, self.component_b, self.component_c, self.component_d, self.component_e, + self.component_f, self.component_g] + expected_quantities = { + self.component_a: 56.0, + self.component_b: 28.0, + self.component_c: 84.0, + self.component_d: 14.0, + self.component_e: 7.0, + self.component_f: 14.0, + self.component_g: 28.0 + } + + self.assertEqual(len(move_ids), 7) + self.assertTrue(not any(kit in products for kit in kits)) + self.assertTrue(all(component in products for component in components)) + self._assert_quantities(move_ids, expected_quantities) + + # Process only 7 units of each component + qty_to_process = 7 + move_ids.write({'quantity': qty_to_process, 'picked': True}) + + # Create a backorder for the missing componenents + pick = po.picking_ids[0] + res = pick.button_validate() + Form(self.env[res['res_model']].with_context(res['context'])).save().process() + + # Check that a backorded is created + self.assertEqual(len(po.picking_ids), 2) + backorder_1 = po.picking_ids - picking_original + self.assertEqual(backorder_1.backorder_id.id, picking_original.id) + + # Even if some components are received completely, + # no KitParent should be received + self.assertEqual(order_line.qty_received, 0) + + # Process just enough components to make 1 kit_parent + qty_to_process = { + self.component_a: 1, + self.component_c: 5, + } + self._process_quantities(backorder_1.move_ids, qty_to_process) + + # Create a backorder for the missing componenents + res = backorder_1.button_validate() + Form(self.env[res['res_model']].with_context(res['context'])).save().process() + + # Only 1 kit_parent should be received at this point + self.assertEqual(order_line.qty_received, 1) + + # Check that the second backorder is created + self.assertEqual(len(po.picking_ids), 3) + backorder_2 = po.picking_ids - picking_original - backorder_1 + self.assertEqual(backorder_2.backorder_id.id, backorder_1.id) + + # Set the components quantities that backorder_2 should have + expected_quantities = { + self.component_a: 48, + self.component_b: 21, + self.component_c: 72, + self.component_d: 7, + self.component_f: 7, + self.component_g: 21 + } + + # Check that the computed quantities are matching the theorical ones. + # Since component_e was totally processed, this componenent shouldn't be + # present in backorder_2 + self.assertEqual(len(backorder_2.move_ids), 6) + move_comp_e = backorder_2.move_ids.filtered(lambda m: m.product_id.id == self.component_e.id) + self.assertFalse(move_comp_e) + self._assert_quantities(backorder_2.move_ids, expected_quantities) + + # Process enough components to make x3 kit_parents + qty_to_process = { + self.component_a: 16, + self.component_b: 5, + self.component_c: 24, + self.component_g: 5 + } + self._process_quantities(backorder_2.move_ids, qty_to_process) + + # Create a backorder for the missing componenents + res = backorder_2.button_validate() + Form(self.env[res['res_model']].with_context(res['context'])).save().process() + + # Check that x3 kit_parents are indeed received + self.assertEqual(order_line.qty_received, 3) + + # Check that the third backorder is created + self.assertEqual(len(po.picking_ids), 4) + backorder_3 = po.picking_ids - (picking_original + backorder_1 + backorder_2) + self.assertEqual(backorder_3.backorder_id.id, backorder_2.id) + + # Check the components quantities that backorder_3 should have + expected_quantities = { + self.component_a: 32, + self.component_b: 16, + self.component_c: 48, + self.component_d: 7, + self.component_f: 7, + self.component_g: 16 + } + self._assert_quantities(backorder_3.move_ids, expected_quantities) + + # Process all missing components + self._process_quantities(backorder_3.move_ids, expected_quantities) + + # Validating the last backorder now it's complete. + # All kits should be received + backorder_3.button_validate() + self.assertEqual(order_line.qty_received, 7.0) + + # Return all components processed by backorder_3 + stock_return_picking_form = Form(self.env['stock.return.picking'] + .with_context(active_ids=backorder_3.ids, active_id=backorder_3.ids[0], + active_model='stock.picking')) + return_wiz = stock_return_picking_form.save() + for return_move in return_wiz.product_return_moves: + return_move.write({ + 'quantity': expected_quantities[return_move.product_id], + 'to_refund': True + }) + res = return_wiz.create_returns() + return_pick = self.env['stock.picking'].browse(res['res_id']) + + # Process all components and validate the picking + return_pick.button_validate() + + # Now quantity received should be 3 again + self.assertEqual(order_line.qty_received, 3) + + stock_return_picking_form = Form(self.env['stock.return.picking'] + .with_context(active_ids=return_pick.ids, active_id=return_pick.ids[0], + active_model='stock.picking')) + return_wiz = stock_return_picking_form.save() + for move in return_wiz.product_return_moves: + move.quantity = expected_quantities[move.product_id] + res = return_wiz.create_returns() + return_of_return_pick = self.env['stock.picking'].browse(res['res_id']) + + # Process all components except one of each + for move in return_of_return_pick.move_ids: + move.write({ + 'quantity': expected_quantities[move.product_id] - 1, + 'to_refund': True + }) + + wiz_act = return_of_return_pick.button_validate() + wiz = Form(self.env[wiz_act['res_model']].with_context(wiz_act['context'])).save() + wiz.process() + + # As one of each component is missing, only 6 kit_parents should be received + self.assertEqual(order_line.qty_received, 6) + + # Check that the 4th backorder is created. + self.assertEqual(len(po.picking_ids), 7) + backorder_4 = po.picking_ids - ( + picking_original + backorder_1 + backorder_2 + backorder_3 + return_of_return_pick + return_pick) + self.assertEqual(backorder_4.backorder_id.id, return_of_return_pick.id) + + # Check the components quantities that backorder_4 should have + for move in backorder_4.move_ids: + self.assertEqual(move.product_qty, 1) + + def test_concurent_procurements(self): + """ Check a production created to fulfill a procurement will not + replenish more that needed if others procurements have the same products + than the production component. """ + + warehouse = self.warehouse + buy_route = warehouse.buy_pull_id.route_id + manufacture_route = warehouse.manufacture_pull_id.route_id + + vendor1 = self.env['res.partner'].create({'name': 'aaa', 'email': 'from.test@example.com'}) + supplier_info1 = self.env['product.supplierinfo'].create({ + 'partner_id': vendor1.id, + 'price': 50, + }) + + component = self.env['product.product'].create({ + 'name': 'component', + 'type': 'product', + 'route_ids': [(4, buy_route.id)], + 'seller_ids': [(6, 0, [supplier_info1.id])], + }) + finished = self.env['product.product'].create({ + 'name': 'finished', + 'type': 'product', + 'route_ids': [(4, manufacture_route.id)], + }) + self.env['stock.warehouse.orderpoint'].create({ + 'name': 'A RR', + 'location_id': warehouse.lot_stock_id.id, + 'product_id': component.id, + 'route_id': buy_route.id, + 'product_min_qty': 0, + 'product_max_qty': 0, + }) + self.env['stock.warehouse.orderpoint'].create({ + 'name': 'A RR', + 'location_id': warehouse.lot_stock_id.id, + 'product_id': finished.id, + 'route_id': manufacture_route.id, + 'product_min_qty': 0, + 'product_max_qty': 0, + }) + + self.env['mrp.bom'].create({ + 'product_id': finished.id, + 'product_tmpl_id': finished.product_tmpl_id.id, + 'product_uom_id': self.uom_unit.id, + 'product_qty': 1.0, + 'consumption': 'flexible', + 'operation_ids': [ + ], + 'type': 'normal', + 'bom_line_ids': [ + (0, 0, {'product_id': component.id, 'product_qty': 1}), + ]}) + + # Delivery to trigger replenishment + picking_form = Form(self.env['stock.picking']) + picking_form.picking_type_id = warehouse.out_type_id + with picking_form.move_ids_without_package.new() as move: + move.product_id = finished + move.product_uom_qty = 3 + with picking_form.move_ids_without_package.new() as move: + move.product_id = component + move.product_uom_qty = 2 + picking = picking_form.save() + picking.action_confirm() + + # Find PO + purchase = self.env['purchase.order.line'].search([ + ('product_id', '=', component.id), + ]).order_id + self.assertTrue(purchase) + self.assertEqual(purchase.order_line.product_qty, 5) + + def test_01_purchase_mrp_kit_qty_change(self): + self.partner = self.env['res.partner'].create({'name': 'Test Partner'}) + + # Create a PO with one unit of the kit product + self.po = self.env['purchase.order'].create({ + 'partner_id': self.partner.id, + 'order_line': [(0, 0, {'name': self.kit_1.name, 'product_id': self.kit_1.id, 'product_qty': 1, 'product_uom': self.kit_1.uom_id.id, 'price_unit': 60.0, 'date_planned': fields.Datetime.now()})], + }) + # Validate the PO + self.po.button_confirm() + + # Check the component qty in the created picking + self.assertEqual(self.po.picking_ids.move_ids_without_package[0].product_uom_qty, 2, "The quantity of components must be created according to the BOM") + self.assertEqual(self.po.picking_ids.move_ids_without_package[1].product_uom_qty, 1, "The quantity of components must be created according to the BOM") + self.assertEqual(self.po.picking_ids.move_ids_without_package[2].product_uom_qty, 3, "The quantity of components must be created according to the BOM") + + # Update the kit quantity in the PO + self.po.order_line[0].product_qty = 2 + # Check the component qty after the update + self.assertEqual(self.po.picking_ids.move_ids_without_package[0].product_uom_qty, 4, "The amount of the kit components must be updated when changing the quantity of the kit.") + self.assertEqual(self.po.picking_ids.move_ids_without_package[1].product_uom_qty, 2, "The amount of the kit components must be updated when changing the quantity of the kit.") + self.assertEqual(self.po.picking_ids.move_ids_without_package[2].product_uom_qty, 6, "The amount of the kit components must be updated when changing the quantity of the kit.") + + def test_procurement_with_preferred_route(self): + """ + 3-steps receipts. Suppose a product that has both buy and manufacture + routes. The user runs an orderpoint with the preferred route defined to + "Buy". A purchase order should be generated. + """ + self.warehouse.reception_steps = 'three_steps' + + manu_route = self.warehouse.manufacture_pull_id.route_id + buy_route = self.warehouse.buy_pull_id.route_id + + # un-prioritize the buy rules + self.env['stock.rule'].search([]).sequence = 1 + buy_route.rule_ids.sequence = 2 + + vendor = self.env['res.partner'].create({'name': 'super vendor'}) + + product = self.env['product.product'].create({ + 'name': 'super product', + 'type': 'product', + 'seller_ids': [(0, 0, {'partner_id': vendor.id})], + 'route_ids': [(4, manu_route.id), (4, buy_route.id)], + }) + + rr = self.env['stock.warehouse.orderpoint'].create({ + 'name': product.name, + 'location_id': self.warehouse.lot_stock_id.id, + 'product_id': product.id, + 'product_min_qty': 1, + 'product_max_qty': 1, + 'route_id': buy_route.id, + }) + rr.action_replenish() + + move_stock, move_check = self.env['stock.move'].search([('product_id', '=', product.id)]) + + self.assertRecordValues(move_check | move_stock, [ + {'location_id': self.warehouse.wh_input_stock_loc_id.id, 'location_dest_id': self.warehouse.wh_qc_stock_loc_id.id, 'state': 'waiting', 'move_dest_ids': move_stock.ids}, + {'location_id': self.warehouse.wh_qc_stock_loc_id.id, 'location_dest_id': self.warehouse.lot_stock_id.id, 'state': 'waiting', 'move_dest_ids': []}, + ]) + + po = self.env['purchase.order'].search([('partner_id', '=', vendor.id)]) + self.assertTrue(po) + + po.button_confirm() + move_in = po.picking_ids.move_ids + self.assertEqual(move_in.move_dest_ids.ids, move_check.ids) + + def test_procurement_with_preferred_route_2(self): + """ + Check that the route set in the product is taken into account + when the product have a supplier and bom. + """ + manu_route = self.warehouse.manufacture_pull_id.route_id + buy_route = self.warehouse.buy_pull_id.route_id + + vendor = self.env['res.partner'].create({'name': 'super vendor'}) + + product = self.env['product.product'].create({ + 'name': 'super product', + 'type': 'product', + 'seller_ids': [(0, 0, {'partner_id': vendor.id})], + 'route_ids': buy_route, + }) + self.env['mrp.bom'].create({ + 'product_tmpl_id': product.product_tmpl_id.id, + 'product_qty': 1.0, + 'product_uom_id': product.uom_id.id, + }) + # create a need of the product with a picking + warehouse = self.env['stock.warehouse'].search([('company_id', '=', self.env.company.id)], limit=1) + picking = self.env['stock.picking'].create({ + 'location_id': warehouse.lot_stock_id.id, + 'location_dest_id': self.env.ref('stock.stock_location_customers').id, + 'picking_type_id': warehouse.out_type_id.id, + 'move_ids': [(0, 0, { + 'name': product.name, + 'product_id': product.id, + 'product_uom': product.uom_id.id, + 'product_uom_qty': 1, + 'location_id': warehouse.lot_stock_id.id, + 'location_dest_id': self.env.ref('stock.stock_location_customers').id, + })] + }) + picking.action_assign() + self.env['stock.warehouse.orderpoint']._get_orderpoint_action() + orderpoint_product = self.env['stock.warehouse.orderpoint'].search( + [('product_id', '=', product.id)]) + self.assertEqual(orderpoint_product.route_id, buy_route, "The route buy should be set on the orderpoint") + # Delete the orderpoint to generate a new one with the manufacture route + orderpoint_product.unlink() + # switch the product route to manufacture + product.write({'route_ids': [(3, buy_route.id), (4, manu_route.id)]}) + self.env['stock.warehouse.orderpoint']._get_orderpoint_action() + orderpoint_product = self.env['stock.warehouse.orderpoint'].search( + [('product_id', '=', product.id)]) + self.assertEqual(orderpoint_product.route_id, manu_route, "The route manufacture should be set on the orderpoint") + + def test_compute_bom_days_00(self): + """Check Days to prepare Manufacturing Order are correctly computed when + Security Lead Time and Days to Purchase are set. + """ + purchase_route = self.env.ref("purchase_stock.route_warehouse0_buy") + manufacture_route = self.env['stock.route'].search([('name', '=', 'Manufacture')]) + vendor = self.env['res.partner'].create({'name': 'super vendor'}) + + company_1 = self.kit_parent.bom_ids.company_id + company_2 = self.env['res.company'].create({ + 'name': 'TestCompany2', + }) + + company_1.po_lead = 0 + company_1.days_to_purchase = 0 + company_1.manufacturing_lead = 0 + company_2.po_lead = 0 + company_2.days_to_purchase = 0 + company_2.manufacturing_lead = 0 + + components = self.component_a | self.component_b | self.component_c | self.component_d | self.component_e | self.component_f | self.component_g + kits = self.kit_parent | self.kit_1 | self.kit_2 | self.kit_3 + kits.route_ids = [(6, 0, manufacture_route.ids)] + components.write({ + 'route_ids': [(6, 0, purchase_route.ids)], + 'seller_ids': [(0, 0, { + 'partner_id': vendor.id, + 'min_qty': 1, + 'price': 1, + 'delay': 1, + })], + }) + + bom_kit_parent = self.kit_parent.bom_ids + bom_kit_parent.action_compute_bom_days() + self.assertEqual(bom_kit_parent.days_to_prepare_mo, 1) + + # set "Security Lead Time" for Purchase and manufacturing, and "Days to Purchase" + company_1.po_lead = 10 + company_1.days_to_purchase = 10 + company_1.manufacturing_lead = 10 + company_2.po_lead = 20 + company_2.days_to_purchase = 20 + company_2.manufacturing_lead = 20 + + # check "Security Lead Time" and "Days to Purchase" will also be included if bom has company_id + bom_kit_parent.action_compute_bom_days() + self.assertEqual(bom_kit_parent.days_to_prepare_mo, 10 + 10 + 10 + 10 + 1) + + self.kit_1.bom_ids.company_id = company_2 + bom_kit_parent.action_compute_bom_days() + self.assertEqual(bom_kit_parent.days_to_prepare_mo, 20 + 20 + 20 + 10 + 1) + + # check "Security Lead Time" and "Days to Purchase" will won't be included if bom doesn't have company_id + kits.bom_ids.company_id = False + bom_kit_parent.action_compute_bom_days() + self.assertEqual(bom_kit_parent.days_to_prepare_mo, 1) + + def test_orderpoint_with_manufacture_security_lead_time(self): + """ + Test that a manufacturing order is created with the correct date_start + when we have an order point with the preferred route set to "manufacture" + and the current company has a manufacturing security lead time set. + """ + # set purchase security lead time to 20 days + self.env.company.po_lead = 20 + # set manufacturing security lead time to 25 days + self.env.company.manufacturing_lead = 25 + product = self.env['product.product'].create({ + 'name': 'super product', + 'type': 'product', + #set route to manufacture + buy + 'route_ids': [ + (4, self.env.ref('mrp.route_warehouse0_manufacture').id), + (4, self.env.ref('purchase_stock.route_warehouse0_buy').id) + ], + 'seller_ids': [(0, 0, { + 'partner_id': self.env['res.partner'].create({'name': 'super vendor'}).id, + 'min_qty': 1, + 'price': 1, + })], + }) + self.env['mrp.bom'].create({ + 'product_tmpl_id': product.product_tmpl_id.id, + 'produce_delay': 1, + 'product_qty': 1, + }) + # create a orderpoint to generate a need of the product with perefered route manufacture + orderpoint = self.env['stock.warehouse.orderpoint'].create({ + 'product_id': product.id, + 'qty_to_order': 5, + 'warehouse_id': self.warehouse.id, + 'route_id': self.env.ref('mrp.route_warehouse0_manufacture').id, + }) + # lead_days_date should be today + manufacturing security lead time + product manufacturing lead time + self.assertEqual(orderpoint.lead_days_date, (fields.Date.today() + timedelta(days=25) + timedelta(days=1))) + orderpoint.action_replenish() + mo = self.env['mrp.production'].search([('product_id', '=', product.id)]) + self.assertEqual(mo.product_uom_qty, 5) + self.assertEqual(mo.date_start.date(), fields.Date.today()) + + def test_mo_overview(self): + component = self.env['product.product'].create({ + 'name': 'component', + 'type': 'product', + 'standard_price': 80, + 'seller_ids': [(0, 0, { + 'partner_id': self.env['res.partner'].create({'name': 'super vendor'}).id, + 'min_qty': 3, + 'price': 10, + })], + }) + finished_product = self.env['product.product'].create({ + 'name': 'finished_product', + 'type': 'product', + }) + self.env['mrp.bom'].create({ + 'product_tmpl_id': finished_product.product_tmpl_id.id, + 'product_qty': 1, + 'bom_line_ids': [(0, 0, { + 'product_id': component.id, + 'product_qty': 2, + 'product_uom_id': component.uom_id.id + })], + }) + mo = self.env['mrp.production'].create({ + 'product_id': finished_product.id, + 'product_qty': 1, + 'product_uom_id': finished_product.uom_id.id, + }) + self.env.flush_all() # flush to correctly build report + report_values = self.env['report.mrp.report_mo_overview']._get_report_data(mo.id)['components'][0]['summary'] + self.assertEqual(report_values['name'], component.name) + self.assertEqual(report_values['quantity'], 2) + self.assertEqual(report_values['mo_cost'], 160) + # Create a second MO with the minimum seller quantity to check that the cost is correctly calculated using the seller's price + mo_2 = self.env['mrp.production'].create({ + 'product_id': finished_product.id, + 'product_qty': 2, + 'product_uom_id': finished_product.uom_id.id, + }) + self.env.flush_all() + report_values = self.env['report.mrp.report_mo_overview']._get_report_data(mo_2.id)['components'][0]['summary'] + self.assertEqual(report_values['quantity'], 4) + self.assertEqual(report_values['mo_cost'], 40) + + def test_bom_report_incoming_po(self): + """ Test report bom structure with duplicated components + With enough stock for the first line and two incoming + POs for the second line and third line. + """ + location = self.stock_location + uom_unit = self.env.ref('uom.product_uom_unit') + final_product_tmpl = self.env['product.template'].create({'name': 'Final Product', 'type': 'product'}) + component_product = self.env['product.product'].create({'name': 'Compo 1', 'type': 'product'}) + + self.env['stock.quant']._update_available_quantity(component_product, location, 3.0) + + bom = self.env['mrp.bom'].create({ + 'product_tmpl_id': final_product_tmpl.id, + 'product_uom_id': self.uom_unit.id, + 'product_qty': 1.0, + 'type': 'normal', + 'bom_line_ids': [ + Command.create({ + 'product_id': component_product.id, + 'product_qty': 3, + 'product_uom_id': uom_unit.id, + }), + Command.create({ + 'product_id': component_product.id, + 'product_qty': 3, + 'product_uom_id': uom_unit.id, + }), + Command.create({ + 'product_id': component_product.id, + 'product_qty': 4, + 'product_uom_id': uom_unit.id, + }) + ] + }) + def create_order(product_id, partner_id, date_order): + f = Form(self.env['purchase.order']) + f.partner_id = partner_id + f.date_order = date_order + with f.order_line.new() as line: + line.product_id = product_id + line.product_qty = 3.0 + line.price_unit = 10 + return f.save() + partner = self.env['res.partner'].create({'name': 'My Test Partner'}) + # Create and confirm two POs with 3 component_product at different date + po_today = create_order(component_product, partner, fields.Datetime.now()) + po_5days = create_order(component_product, partner, fields.Datetime.now() + timedelta(days=5)) + + po_today.button_confirm() + po_5days.button_confirm() + report_values = self.env['report.mrp.report_bom_structure']._get_report_data(bom_id=bom.id) + line_values = report_values['lines']['components'][0] + self.assertEqual(line_values['availability_state'], 'estimated', 'The merged components should be estimated.') + + def test_bom_report_incoming_po2(self): + """ Test report bom structure with duplicated components + With an incoming PO for the first and second line. + """ + uom_unit = self.env.ref('uom.product_uom_unit') + final_product_tmpl = self.env['product.template'].create({'name': 'Final Product', 'type': 'product'}) + component_product = self.env['product.product'].create({'name': 'Compo 1', 'type': 'product'}) + + bom = self.env['mrp.bom'].create({ + 'product_tmpl_id': final_product_tmpl.id, + 'product_uom_id': self.uom_unit.id, + 'product_qty': 1.0, + 'type': 'normal', + 'bom_line_ids': [ + Command.create({ + 'product_id': component_product.id, + 'product_qty': 3, + 'product_uom_id': uom_unit.id, + }), + Command.create({ + 'product_id': component_product.id, + 'product_qty': 3, + 'product_uom_id': uom_unit.id, + }), + ] + }) + partner = self.env['res.partner'].create({'name': 'My Test Partner'}) + # Create and confirm one PO with 6 component_products. + f = Form(self.env['purchase.order']) + f.partner_id = partner + f.date_order = fields.Datetime.now() + with f.order_line.new() as line: + line.product_id = component_product + line.product_qty = 6.0 + line.price_unit = 10 + po_today = f.save() + po_today.button_confirm() + report_values = self.env['report.mrp.report_bom_structure']._get_report_data(bom_id=bom.id) + line_values = report_values['lines']['components'][0] + self.assertEqual(line_values['availability_state'], 'expected', 'The first component should be expected as there is an incoming PO.') diff --git a/views/mrp_bom_views.xml b/views/mrp_bom_views.xml new file mode 100644 index 0000000..16fd236 --- /dev/null +++ b/views/mrp_bom_views.xml @@ -0,0 +1,13 @@ + + + + mrp.bom.view.form.inherited.purchase.mrp + mrp.bom + + + + + + + + \ No newline at end of file diff --git a/views/mrp_production_views.xml b/views/mrp_production_views.xml new file mode 100644 index 0000000..99ca8b8 --- /dev/null +++ b/views/mrp_production_views.xml @@ -0,0 +1,19 @@ + + + + mrp.production.inherited.form.purchase + mrp.production + 32 + + + + + + + + diff --git a/views/purchase_order_views.xml b/views/purchase_order_views.xml new file mode 100644 index 0000000..7520417 --- /dev/null +++ b/views/purchase_order_views.xml @@ -0,0 +1,18 @@ + + + + purchase.order.inherited.form.mrp + purchase.order + + + + + + + + diff --git a/views/stock_orderpoint_views.xml b/views/stock_orderpoint_views.xml new file mode 100644 index 0000000..0ebf78b --- /dev/null +++ b/views/stock_orderpoint_views.xml @@ -0,0 +1,13 @@ + + + + stock.warehouse.orderpoint.tree.editable.inherit.show_route + stock.warehouse.orderpoint + + + + show + + + +